{
    "openapi": "3.1.0",
    "info": {
        "title": "Terake API",
        "description": "Terake measures, accounts for and calculates everything to do with work. Its purpose\nis time: how long a job took, who did it, and on what. A worker starts and stops work\nfrom the mobile app, or by presenting an NFC or RFID card at a reader, and those start\nand stop times become the record everything else is counted from. Plans and rosters\nare made once and shared with the people who carry them out, arriving in each\nworker's calendar on the phone as well as in the browser; a planned task marked done\nbecomes recorded work without anyone re-entering it. Alongside hours the system\ntracks what work consumes (materials, machinery, fuel) and the sites or objects it\nwas carried out on. Companies use it in construction, maintenance, manufacturing,\nservices, forestry and agriculture. This API is that system's interface.\n\nThe main workhorse of the system lives in the [Workdones](/api/doc/Workdones)\nsection: an atomic piece of work is called a Workdone, and most other data\nultimately exists to describe, plan or account for one. The other significant\ncarriers of user data are plans and rosters, both in\n[Planning](/api/doc/Planning), inspection and repair cases in\n[Maintenance](/api/doc/Maintenance), and the faults raised against machinery, which\nare recorded in the Faults part of [Fleet](/api/doc/Fleet). If you are looking for\nwhere a company's day-to-day records actually accumulate, these are the places to\nstart; if you are looking for results rather than records, use the reports in\n[Reporting](/api/doc/Reporting).\n\nNearly every record refers to shared lists (workers, worktypes, workobjects,\ncustomers, materials, facilities and the like) called classificators, and request\nbodies set those relations by id. The endpoints for looking the ids up are in the\nClassificators part of [Admin](/api/doc/Admin); of them, prefer\n[`GET /api/search/{classificator_type}`](/api/doc/Admin#operation/get_api_search_classificators_all).\n\n## Choose a section\n\nThe reference is split by the job you are doing, so each page holds one domain\nrather than every endpoint in the system. This page is the index; the endpoints\nlive in the sections below. The whole description, every section in one file, is\n[/api/doc.json](/api/doc.json).\n\n| Section | What it covers |\n|---|---|\n| [Workdones](/api/doc/Workdones) | Work actually performed and the hours it took: start and stop, brigade start and stop, TTKI card readers, summarised worktime. |\n| [Planning](/api/doc/Planning) | Work scheduled before it happens: plans, calendar items, projects. |\n| [Rosters](/api/doc/Rosters) | Who is to work when: rosters, absences, shifts, and the recurrence of roster items and plans. |\n| [Fieldbook](/api/doc/Fieldbook) | The land and what is done to it: agrifields, agrifield works, crops, soil samples, fertilising, herding, geometry, cadastres. |\n| [Fleet](/api/doc/Fleet) | Machinery and what it consumes: facilities, parts, fuel, fuel balances, transport, faults, identificators. |\n| [Maintenance](/api/doc/Maintenance) | Keeping machinery serviceable: inspection cases, repair cases, templates and intervals. |\n| [Materials](/api/doc/Materials) | What gets consumed and what is in stock: materials, categories, inventory, lifespans. |\n| [Reporting](/api/doc/Reporting) | Consolidated figures over work already recorded. Prefer these over summing raw records. |\n| [Pria](/api/doc/Pria) | Statutory reporting to the Estonian agricultural registry over X-Road. |\n| [Files](/api/doc/Files) | Attachments and generated output: file items, document types, PDFs and spreadsheets, signed documents. |\n| [Sync](/api/doc/Sync) | Keeping a device current: the flat API bookmarked sync and integration partners. |\n| [Identity](/api/doc/Identity) | Who someone is: worker groups, departments, professions, login, passwords and roles. |\n| [Admin](/api/doc/Admin) | Running the account and the lists it is described with: workers, workday rules, companies, customers, agreements, messages, settings, cost accounts, worktypes, workobjects and their categories, location areas, classificators. |\n\n## Calling the API\n\n- Base URL `https://app.terake.com/api`. Every call acts as one worker and sees only\n  that worker's company (and the companies it serves); the worker's roles decide\n  what may be changed.\n- Authenticate with an OAuth 2.0 access token from `https://auth.terake.com`\n  (`Authorization: Bearer ...`), or with the worker's API key in the\n  `X-Terake-Api-Key` header. To find your API key, log in to\n  [Terake](https://app.terake.com/), click your name in the left-hand menu, click\n  \"My profile\" and show the key in the \"Apikey\" field.\n- To test an unauthenticated connection, open https://app.terake.com/api/ping; the\n  answer is a JSON object with a \"pong\" parameter.\n- Request bodies are JSON. In create and update calls an absent key leaves the field\n  as it is, an over-long text is shortened, and a related object is given by its id.\n- Send a date as `Y-m-d` and a date with a time as `Y-m-d H:i:s`, for example\n  `2026-08-28` and `2026-08-28 14:30:00`. Other spellings PHP can parse are usually\n  accepted, but a slash-separated date is read month-first, so send `Y-m-d` and\n  avoid the ambiguity. A duration is `HH:MM` or `HH:MM:SS`, or a plain number of\n  seconds.\n- Responses are JSON. Date-times are ISO 8601 with offset, in Estonian local time,\n  as the web client shows them; fields ending in `_timestamp` are Unix seconds.\n  Whole numbers may come as `16` where a decimal is meant. An object met a second\n  time inside one response (a circular reference) is written as `null`.\n- Lists are not paged unless the operation says so (`page`, `per_page`).\n- Please use common sense when making calls and do not load the service with\n  unnecessary or excessive requests. For time-consuming tasks, such as bulk imports\n  or large exports, prefer Estonian night time.\n\n## Help\n\nEach operation links to the\n[help.terake.com](https://help.terake.com) page that explains the screen using it;\nthe whole map is at https://help.terake.com/api-map.json and an overview for\nlanguage models at https://help.terake.com/llms.txt. Terms are explained in the\n[glossary](https://help.terake.com/en/glossary/). For any further questions or\nrequests, contact us at [support@terake.com](mailto:support@terake.com).\n\n## Errors\n\n| Status | Body | Meaning |\n|---|---|---|\n| 401 | `{\"error\": \"unauthorized\", \"error_description\": \"...\"}` | no access token |\n| 401 | `{\"error\": {\"code\": 401, \"message\": \"Unauthorized\"}}` | unknown or expired token or key |\n| 403 | `{\"error\": {\"code\": 403, \"message\": \"Forbidden\"}}` | the worker's roles do not allow it |\n| 404 | `{\"error\": {\"code\": 404, \"message\": \"Not Found\"}}` | missing, deleted, or another company's |\n| 400, 422 | `{\"error\": ...}` or `{\"success\": false, ...}` | invalid input, described per operation |\n| 429 | `{\"error\": {\"code\": 429, \"message\": \"Too Many Requests\"}}` | too many requests or failed sign-ins in a short time; wait the seconds in the `Retry-After` header |\n| 500 | `{\"error\": {\"code\": 500, \"message\": \"Internal Server Error\"}}` | server fault |\n\nRegistration (`POST /api/createclient`) and the password link\n(`POST /api/sendpasswordlink`) answer 429 with `{\"error\": \"too_many_requests\"}` instead.\n\nA few older operations answer 200 with `{\"status\": 0, \"key\": \"<translation key>\"}`\nor `false` for a refusal; their response descriptions say so.\n\n## Coded values\n\nLookup values come as an object with `id`, `slug` (a translation key) and `name`.\nThe ids below are fixed. `GET /api/general/classificators?types=...` returns them\nwith labels.\n\n**Roster entry type** (`roster_type`, `roster_type_indicator` on a roster entry),\nwith the English UI label: 1 Work schedule, 2 Vacation, 3 Sickness, 4 Not available,\n8 Task, 11 work done (shown in the roster), 14 Day off, 15 Study leave, 16 Parental\nleave, 17 Leave without pay, 18 Task / Teamwork, 19 Task / Group work. Types 2, 3, 4\nand 14\u201317 are absences and last whole days. The slugs of 2, 3 and 4 are older names\n(`type_unavailable`, `type_emergency`, `type_disabled`); go by the label.\n\n**Roster entry status** (`roster_status`): 2 \"Waiting for verification\" (Estonian\n\"Ootab lukustamist\": a worker took or entered it and a manager has not accepted it),\n3 \"Locked\" (accepted by a manager), 4 \"Rejected\" (the worker declined it). 1 open is\nno longer used.\n\n**Planned task status** (`plan_status`): 1 work in progress, 2 finished,\n3 unfinished, 4 plan edited, 5 rejected, 6 postponed, 7 blocked.\n\n**Work done** has no status code: it is running while `stop_time` is empty, and\n`is_approved` with `approver` and `approving_time` tell whether a manager has\napproved it. Approved work is what the hour and pay reports count.\n\n**Time tracking of a worker** (`time_tracking_type`): 1 measured (hours come from\nthe work entered), 2 by schedule (hours come from the roster).\n\n**Transport type**: 1 general, 2 inventory move, 3 silage transport.\n**Inventory status**: 1 in storage, 2 in use, 3 handed over, 4 disabled.\n**Accounting unit of a machine**: 1 engine hours, 2 kilometres, 3 engine hours\nfirst, 4 kilometres first. **Identifier type**: 1 Alexela fuel card, 2 QR code,\n3 NFC tag, 4 and 5 fuel cards of the TTKI register.\n**Land agreement type**: 1 rental, 2 ownership, 3 mortgage, 4 right of use,\n5 rented out, 6 verbal rental, 7 other.\n**Crop purpose** (PRIA): 1 grain or open field, 2 grazed grassland, 3 not cared\nfor, 4 greenhouse, 5 green fodder (silage).\n",
        "version": "1.0.0"
    },
    "paths": {
        "/api/workdones/realtime": {
            "get": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Ongoing Work list",
                "externalDocs": {
                    "description": "Help: Dashboard (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/realtime/dash/"
                },
                "operationId": "get_api_workdones_realtime",
                "parameters": [
                    {
                        "name": "department_ids",
                        "in": "query",
                        "description": "Comma-separated department ids to restrict the result to.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "oneself",
                        "in": "query",
                        "description": "Truthy limits the result to the authenticated worker.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    }
                ]
            }
        },
        "/api/agreements/agrifield": {
            "get": {
                "tags": [
                    "Agreements"
                ],
                "summary": "Agreements collection",
                "description": "The agreement objects of the company's undeleted fields (work object category 1), ordered by agreement (newest first), cadastre number, block and field number.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "get_api_agreements_agrifield_get_collection",
                "responses": {
                    "200": {
                        "description": "Array of AgreementObject (serializer groups agreement, baseattribute, search)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/AgreementObject"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/fuelbalances/main/{facility_id}": {
            "get": {
                "tags": [
                    "FuelBalances"
                ],
                "summary": "FuelBalance periods",
                "description": "Per main facility of the company: {id: \"facility|from|to\", from_time, to_time, facility {id, name}, balance_start, balance_end, filling_amount, consumption_amount}; facilities without a balance or filling are left out. With a facility id, that facility's row alone (an object), or [].",
                "externalDocs": {
                    "description": "Help: Refueling settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/fuelbalances/"
                },
                "operationId": "get_api_fuelbalances_main_get_one",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d; the whole of that day is included. Defaults to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "facility_id",
                        "in": "query",
                        "description": "One facility (also in the path)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "facility_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of periods, or one period"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/fuelbalances",
                        "title": "Refueling settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/fuelbalances/",
                            "en": "https://help.terake.com/en/admin/fuelbalances/"
                        }
                    }
                ]
            }
        },
        "/api/fuelbalances/main": {
            "get": {
                "tags": [
                    "FuelBalances"
                ],
                "summary": "FuelBalance periods",
                "description": "Per main facility of the company: {id: \"facility|from|to\", from_time, to_time, facility {id, name}, balance_start, balance_end, filling_amount, consumption_amount}; facilities without a balance or filling are left out. With a facility id, that facility's row alone (an object), or [].",
                "externalDocs": {
                    "description": "Help: Refueling settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/fuelbalances/"
                },
                "operationId": "get_api_fuelbalances_main_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d; the whole of that day is included. Defaults to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "facility_id",
                        "in": "query",
                        "description": "One facility (also in the path)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of periods, or one period"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/fuelbalances",
                        "title": "Refueling settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/fuelbalances/",
                            "en": "https://help.terake.com/en/admin/fuelbalances/"
                        }
                    }
                ]
            }
        },
        "/api/identificators/worker/{id}": {
            "get": {
                "tags": [
                    "Identificators"
                ],
                "summary": "Identificators registered for one worker",
                "description": "The worker's identificators in the caller's company, each with its type slug and a created_by block with fullname.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "get_api_identificators_worker_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worker id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of {id, name, created_at, identificator_type: {slug}, created_by: {fullname}}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/multiplan/data": {
            "get": {
                "tags": [
                    "Plans"
                ],
                "summary": "Plan rows for a period grouped by resource type",
                "description": "Plan items of the company overlapping the period, as plan_data { Ymd: { resource id (0 without one): [Planitem] } },\nthe days of the period (dates_array, at most 51: Ymd, dayname_trans_key, date_display) and the resources\n(classificator: workers, main or secondary facilities, customers or work objects). An unknown resource type is worker.",
                "externalDocs": {
                    "description": "Help: Planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/multiplan/"
                },
                "operationId": "get_api_multiplan_data",
                "parameters": [
                    {
                        "name": "resource_type",
                        "in": "path",
                        "description": "worker, main_facility, secondary_facility, workobject or customer; on /api/multiplan/data a query parameter (default worker)",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d. Defaults to the first day of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, the whole day included. Defaults to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ plan_data, dates_array, classificator } (serializer groups classificator, default, planitem)"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    }
                ]
            }
        },
        "/api/multiplan/delete": {
            "post": {
                "tags": [
                    "Plans"
                ],
                "summary": "Deletes multiple Planitem",
                "description": "Marks the company's plan items named in selected_planitem_ids deleted; an unknown one answers 404.",
                "externalDocs": {
                    "description": "Help: Planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/multiplan/"
                },
                "operationId": "post_api_multiplan_delete",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "selected_planitem_ids": {
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ deleted: [ids] }"
                    },
                    "404": {
                        "description": "A plan item is not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    }
                ]
            }
        },
        "/api/notifications/new": {
            "get": {
                "tags": [
                    "Messages"
                ],
                "summary": "Unread notifications for the calling worker, newest first, capped at 99",
                "externalDocs": {
                    "description": "Help: Messages (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/messages/"
                },
                "operationId": "get_api_notification_new_list_get",
                "responses": {
                    "200": {
                        "description": "List of Notifications (serializer group message)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Notification"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/messages",
                        "title": "Messages",
                        "help": {
                            "et": "https://help.terake.com/et/my/messages/",
                            "en": "https://help.terake.com/en/my/messages/"
                        }
                    }
                ]
            }
        },
        "/api/createclient": {
            "post": {
                "tags": [
                    "Account"
                ],
                "summary": "Creates a company with its first administrator.",
                "operationId": "post_api_createclient",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/CreateClientRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "status 1 with key \"register_ok\" and the new administrator; status 0 with key \"register_failure_user_exists\"; or {\"error\": slug} for unusable input",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "integer",
                                            "enum": [
                                                0,
                                                1
                                            ]
                                        },
                                        "key": {
                                            "type": "string",
                                            "enum": [
                                                "register_ok",
                                                "register_failure_user_exists"
                                            ]
                                        },
                                        "loggedUser": {
                                            "oneOf": [
                                                {
                                                    "$ref": "#/components/schemas/LoggedUser"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too many registrations from this address"
                    }
                }
            }
        },
        "/api/sendpasswordlink": {
            "post": {
                "tags": [
                    "Account"
                ],
                "summary": "Sends a password reset link to the account behind an e-mail address or username.",
                "operationId": "post_api_sendpasswordlink",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/SendPasswordLinkRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The string \"ok\" whenever the request was well-formed, whether or not the address is known; {\"error\": \"login.unknown_error\"} otherwise",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "oneOf": [
                                        {
                                            "type": "string",
                                            "enum": [
                                                "ok"
                                            ]
                                        },
                                        {
                                            "properties": {
                                                "error": {
                                                    "type": "string"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too many requests from this address"
                    }
                }
            }
        },
        "/api/agreements/{id}": {
            "get": {
                "tags": [
                    "Agreements"
                ],
                "summary": "Agreement by ID or UUID",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "get_api_agreements_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Agreement id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Agreement (serializer groups agreement, archive, classificator, auditcolumns, search)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Agreement2"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Agreements"
                ],
                "summary": "Modify Agreement",
                "description": "The body carries the fields of POST and the agreement's id, which must equal the path's. A body without agreement_payment_detail removes the payment detail.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "put_api_agreements_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Agreement id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Agreement (serializer groups agreement, archive, classificator, auditcolumns, search)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Agreement2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Agreement"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Agreements"
                ],
                "summary": "Delete Agreement by ID or UUID",
                "description": "Marks the agreement deleted and archived. Returns the deleted Agreement.",
                "externalDocs": {
                    "description": "Help: Admin Settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/index/"
                },
                "operationId": "delete_api_agreements_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Agreement id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Agreement (serializer groups agreement, archive, classificator, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Agreement3"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Agreement"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/agreements/workobject/{workobject_id}": {
            "get": {
                "tags": [
                    "Agreements"
                ],
                "summary": "Agreements attached to one workobject",
                "description": "The agreement objects attached to the work object, and an empty array when there are none.",
                "operationId": "get_api_agreements_get_collection",
                "parameters": [
                    {
                        "name": "workobject_id",
                        "in": "path",
                        "description": "Workobject id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of AgreementObject (serializer groups agreement, archive, classificator, auditcolumns, search)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/AgreementObject2"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "The work object is not visible to the caller's company"
                    }
                }
            }
        },
        "/api/agreements": {
            "post": {
                "tags": [
                    "Agreements"
                ],
                "summary": "Create new Agreement",
                "description": "Creates an agreement with its payment detail and agreement objects, or, with \"agreement\": {\"id\": ...}, relates the body's work object and cadastre to that existing agreement.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "post_api_agreements_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "agreement_type": {
                                        "description": "Required for a new agreement, {\"id\": ...}",
                                        "type": "object"
                                    },
                                    "agreement_number": {
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "signing_time": {
                                        "type": "string"
                                    },
                                    "from_time": {
                                        "type": "string"
                                    },
                                    "to_time": {
                                        "type": "string"
                                    },
                                    "customer": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "customer_person": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "agreement": {
                                        "description": "Relate the given workobject and cadastre to this existing agreement instead of creating a new one. Object with an id field.",
                                        "type": "object"
                                    },
                                    "workobject": {
                                        "description": "Workobject to attach to the agreement named in agreement, {\"id\": ...}",
                                        "type": "object"
                                    },
                                    "cadastre": {
                                        "description": "Cadastre linking the workobject to the agreement, {\"id\": ...}",
                                        "type": "object"
                                    },
                                    "agreement_objects": {
                                        "description": "Agreement objects to create for a new agreement, each {\"workobject\": {\"id\"}, \"cadastre\": {\"id\"}}",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "agreement_payment_detail": {
                                        "description": "account_number, description, total_amount, paid_amount, next_payment_amount, next_payment_date. Read only when creating a new agreement; omitting it then removes any payment detail the agreement already has.",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Agreement (serializer groups agreement, archive, classificator, auditcolumns, search)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Agreement2"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/agreements/{agreement_id}/agreement_object": {
            "post": {
                "tags": [
                    "Agreements"
                ],
                "summary": "Relates a work object to an agreement",
                "description": "Returns the new AgreementObject, {\"error\": \"alert.agreement_object_exists\"} when the relation exists or the work object is not the company's, and an empty body without an agreement id.",
                "operationId": "post_api_agreements_objects_post",
                "parameters": [
                    {
                        "name": "agreement_id",
                        "in": "path",
                        "description": "Agreement id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "workobject": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "cadastre": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The AgreementObject (serializer groups agreement, search), or {\"error\": \"alert.agreement_object_exists\"}",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgreementObject4"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not an agreement of the caller's company"
                    }
                }
            }
        },
        "/api/agreements/{agreement_id}/agreement_object/{agreement_object_uuid}": {
            "delete": {
                "tags": [
                    "Agreements"
                ],
                "summary": "Removes an agreement object",
                "description": "Returns true when the agreement had the object, false otherwise.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "delete_api_agreements_objects_delete",
                "parameters": [
                    {
                        "name": "agreement_id",
                        "in": "path",
                        "description": "Agreement id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "agreement_object_uuid",
                        "in": "path",
                        "description": "Agreement object uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "true or false"
                    },
                    "404": {
                        "description": "Not an agreement of the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/agreements/{id}/togglearchive": {
            "get": {
                "tags": [
                    "Agreements"
                ],
                "summary": "Toggles Archive/Un-archive Agreement",
                "operationId": "get_api_agreements_get_togglearchive",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "put": {
                "tags": [
                    "Agreements"
                ],
                "summary": "Toggle Archive/Un-archive Agreement",
                "description": "No request body. The same action answers on GET.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "put_api_agreements_put_togglearchive",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Agreement id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Agreement (serializer groups agreement, archive, classificator, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Agreement3"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworkcapacities": {
            "get": {
                "tags": [
                    "AgrifieldWorkCapacities"
                ],
                "summary": "Planning targets",
                "description": "The company's planning targets per worktype and crop period, by id.",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                },
                "operationId": "get_api_agrifieldworkcapacities_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of AgrifieldWorkCapacity (serializer groups default, agrifieldworkcapacities)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/AgrifieldWorkCapacity"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "AgrifieldWorkCapacities"
                ],
                "summary": "Create planning target",
                "description": "Creates a planning target, or modifies the one the body names by \"id\" or \"uuid\". A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                },
                "operationId": "post_api_agrifieldworkcapacities_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "worktype": {
                                        "description": "{id} of a worktype the company sees; null clears it",
                                        "type": "object"
                                    },
                                    "crop_period": {
                                        "description": "{id} of a crop period, usually the year (e.g. 2026); null clears it",
                                        "type": "object"
                                    },
                                    "hectares_total": {
                                        "description": "Hectares planned for that worktype in the period (a comma decimal separator is accepted)",
                                        "type": "number"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The AgrifieldWorkCapacity (serializer groups default, agrifieldworkcapacity)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldWorkCapacity2"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworkcapacities/{id}": {
            "get": {
                "tags": [
                    "AgrifieldWorkCapacities"
                ],
                "summary": "Planning target",
                "description": "One planning target by ID or UUID.",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                },
                "operationId": "get_api_agrifieldworkcapacities_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWorkCapacity id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[^/]+"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The AgrifieldWorkCapacity (serializer groups default, facility_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldWorkCapacity3"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "AgrifieldWorkCapacities"
                ],
                "summary": "Update planning target",
                "description": "Modifies a planning target. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                },
                "operationId": "put_api_agrifieldworkcapacities_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWorkCapacity id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Must equal the path id",
                                        "type": "integer"
                                    },
                                    "worktype": {
                                        "description": "{id} of a worktype the company sees; null clears it",
                                        "type": "object"
                                    },
                                    "crop_period": {
                                        "description": "{id} of a crop period; null clears it",
                                        "type": "object"
                                    },
                                    "hectares_total": {
                                        "type": "number"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The AgrifieldWorkCapacity (serializer groups default, agrifieldworkcapacity)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldWorkCapacity2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify it"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "AgrifieldWorkCapacities"
                ],
                "summary": "Delete planning target",
                "description": "Deletes one planning target by ID or UUID (marks it deleted). Returns it.",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                },
                "operationId": "delete_api_agrifieldworkcapacities_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWorkCapacity id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted AgrifieldWorkCapacity (serializer groups default, agrifieldworkcapacity)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldWorkCapacity2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify it"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworkcapacities/fulfillment/{crop_period_id}": {
            "get": {
                "tags": [
                    "AgrifieldWorkCapacities"
                ],
                "summary": "Planning target fulfilment",
                "description": "One row per planning target of the crop period: worktype_name, hectares_total, workdone_hectars_total (approved field work since 1 October of the year before, served hectares or else the field size), workdone_hectars_percent, agrifield_work_hectares_total and planitem_hectares_total (always 0).",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                },
                "operationId": "get_api_agrifieldworkcapacities_fulfillment_get_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of fulfilment rows"
                    },
                    "404": {
                        "description": "Unknown crop period"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworkcapacities/perioddata/{crop_period_id}": {
            "get": {
                "tags": [
                    "AgrifieldWorkCapacities"
                ],
                "summary": "Planning targets of a crop period",
                "description": "One row per worktype of the period's field works: worktype_id, worktype_name, hectares_total (the company's target, 0 without one), crop_period.",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                },
                "operationId": "get_api_agrifieldworkcapacities_perioddata_get_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of period rows"
                    },
                    "404": {
                        "description": "Unknown crop period"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "AgrifieldWorkCapacities"
                ],
                "summary": "Save a planning target",
                "description": "Sets the company's target for one worktype in the crop period, creating it when missing. Answers {\"ok\": 1}.",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                },
                "operationId": "post_api_agrifieldworkcapacities_perioddata_post",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "worktype_id": {
                                        "description": "A worktype the company sees",
                                        "type": "integer"
                                    },
                                    "hectares_total": {
                                        "description": "Hectares planned (a comma decimal separator is accepted)",
                                        "type": "number"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"ok\": 1}"
                    },
                    "404": {
                        "description": "The worktype is not visible to the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks": {
            "get": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Planned field jobs of one crop period",
                "description": "The company's jobs of the crop period that are not deleted. An AgrifieldWork is one job planned across a set of fields for a season (sowing, spraying, fertilising, harvesting), not a record of work performed.",
                "externalDocs": {
                    "description": "Help: Fieldwork plan admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                },
                "operationId": "get_api_agrifieldworks_get_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "query",
                        "description": "Crop period id, usually the year (e.g. 2026); the current year by default",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of AgrifieldWork (serializer groups agrifieldwork, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/AgrifieldWork"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanningedit",
                        "title": "Fieldwork plan admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanningedit/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Create a planned field job",
                "description": "Creates a job of the company for a crop period, or modifies the one a body \"id\" names. crops, pria_payees and location_areas replace the whole list when given; only crops and PRIA payees of the company's fields in the crop period are taken.",
                "externalDocs": {
                    "description": "Help: Fieldwork plan admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                },
                "operationId": "post_api_agrifieldworks_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "POST only: the company's job to modify instead of creating one",
                                        "type": "integer"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "worktype": {
                                        "description": "{id} of a work type of the company; null clears it",
                                        "type": "object"
                                    },
                                    "crop_period": {
                                        "description": "{id} of the crop period, usually the year; required for a new job",
                                        "type": "object"
                                    },
                                    "customer": {
                                        "description": "{id} of a customer of the company; null clears it",
                                        "type": "object"
                                    },
                                    "crops": {
                                        "description": "Crops as objects with an id; replaces the whole list",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "pria_payees": {
                                        "description": "PRIA payees as objects with an id; replaces the whole list",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "location_areas": {
                                        "description": "Location areas as objects with an id; replaces the whole list",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "AgrifieldWork (serializer groups agrifieldwork, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldWork"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanningedit",
                        "title": "Fieldwork plan admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanningedit/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks/{id}": {
            "get": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "One planned field job",
                "description": "One job of the company or a partner by id or uuid, with the fields and crops it covers.",
                "externalDocs": {
                    "description": "Help: Fieldwork plan admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                },
                "operationId": "get_api_agrifieldworks_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWork id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "AgrifieldWork (serializer groups agrifieldwork, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldWork"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not visible to the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanningedit",
                        "title": "Fieldwork plan admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanningedit/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Modify a planned field job",
                "description": "A key the body leaves out leaves that field alone. crops, pria_payees and location_areas replace the whole list when given; only crops and PRIA payees of the company's fields in the crop period are taken.",
                "externalDocs": {
                    "description": "Help: Fieldwork plan admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                },
                "operationId": "put_api_agrifieldworks_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWork id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "POST only: the company's job to modify instead of creating one",
                                        "type": "integer"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "worktype": {
                                        "description": "{id} of a work type of the company; null clears it",
                                        "type": "object"
                                    },
                                    "crop_period": {
                                        "description": "{id} of the crop period, usually the year; required for a new job",
                                        "type": "object"
                                    },
                                    "customer": {
                                        "description": "{id} of a customer of the company; null clears it",
                                        "type": "object"
                                    },
                                    "crops": {
                                        "description": "Crops as objects with an id; replaces the whole list",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "pria_payees": {
                                        "description": "PRIA payees as objects with an id; replaces the whole list",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "location_areas": {
                                        "description": "Location areas as objects with an id; replaces the whole list",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "AgrifieldWork (serializer groups agrifieldwork, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldWork"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not the company's job"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanningedit",
                        "title": "Fieldwork plan admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanningedit/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Delete a planned field job",
                "description": "Marks the job deleted and archived and removes its fertilizing cache. Returns the deleted job.",
                "externalDocs": {
                    "description": "Help: Fieldwork plan admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                },
                "operationId": "delete_api_agrifieldworks_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWork id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted AgrifieldWork (serializer groups agrifieldwork, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldWork"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "A partner's job"
                    },
                    "404": {
                        "description": "Not visible to the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanningedit",
                        "title": "Fieldwork plan admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanningedit/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks/{id}/materialusages": {
            "post": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Add or change a planned material input",
                "description": "The input is held as a ratio per hectare. The ratio is also written to the job's plan items that are not executed yet. Returns the job.",
                "externalDocs": {
                    "description": "Help: Fieldwork plan admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                },
                "operationId": "post_api_agrifieldworks_addmaterialusage_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWork id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "material": {
                                        "description": "{id} of the material",
                                        "type": "object"
                                    },
                                    "ratio_per_hectare": {
                                        "description": "Amount per hectare (a decimal comma is accepted)",
                                        "type": "number"
                                    },
                                    "storage": {
                                        "description": "{id} of the storage field; field 1 by default",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "AgrifieldWork (serializer groups agrifieldwork, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldWork"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "A partner's job"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanningedit",
                        "title": "Fieldwork plan admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanningedit/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks/{id}/materialusages/{material_usage_id}": {
            "delete": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Remove a planned material input",
                "description": "Removed for good (no recycle bin), also from the job's plan items that are not executed yet. Returns the job; {} when the job is a partner's or has no such input.",
                "externalDocs": {
                    "description": "Help: Fieldwork plan admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                },
                "operationId": "delete_api_agrifieldworks_materialusages_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWork id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "material_usage_id",
                        "in": "path",
                        "description": "AgrifieldWorkMaterialUsage id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "AgrifieldWork (serializer groups agrifieldwork, classificator), or {}",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldWork"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanningedit",
                        "title": "Fieldwork plan admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanningedit/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks/{id}/joinagrifield/{agrifieldid}": {
            "put": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Add one field to a planned job",
                "description": "Adds a field of the company to the company's job unless it is already there. Ignores the request body. An unknown job answers 204.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "put_api_agrifieldworks_join_agrifield_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWork id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "agrifieldid",
                        "in": "path",
                        "description": "Agrifield id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "AgrifieldWork (serializer groups agrifieldwork, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldWork"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/fieldworkplanningedit",
                        "title": "Fieldwork plan admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanningedit/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                        }
                    },
                    {
                        "route": "/fieldbook/fieldworkview",
                        "title": "Fieldwork planning (calendar view)",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkview/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkview/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks/set/{id}/agrifields": {
            "put": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Add fields to, or exclude them from, a planned job",
                "description": "The listed fields join the company's job, or with excluded set are excluded from it (their plan item for the job, if not executed yet, is deleted). Returns { agrifields, agrifields_excluded, agrifields_by_crop }.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "put_api_agrifieldworks_setagrifields_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWork id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "ids": {
                                        "description": "Field ids",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "excluded": {
                                        "description": "Exclude the fields instead of adding them",
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ agrifields, agrifields_excluded, agrifields_by_crop } (serializer groups default, agrifieldwork)"
                    },
                    "404": {
                        "description": "Not the company's job, or no ids"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/fieldworkplanningedit",
                        "title": "Fieldwork plan admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanningedit/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                        }
                    },
                    {
                        "route": "/fieldbook/fieldworkview",
                        "title": "Fieldwork planning (calendar view)",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkview/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkview/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks/{id}/agrifieldsoperation/{action}": {
            "put": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Add, exclude or clear one field in a planned job's selection",
                "description": "add puts the field in the covered list and takes it out of the excluded list, remove does the opposite, clear takes it out of both; any other value changes nothing. Returns { agrifields, agrifields_excluded, agrifields_by_crop }.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "put_api_agrifieldworks_agrifieldsoperation_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWork id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "action",
                        "in": "path",
                        "description": "add, remove or clear",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "agrifield_id": {
                                        "description": "Field of the company or a partner",
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ agrifields, agrifields_excluded, agrifields_by_crop } (serializer groups default, agrifieldwork)"
                    },
                    "404": {
                        "description": "Not the company's job, or the field is not visible"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/fieldworkplanningedit",
                        "title": "Fieldwork plan admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanningedit/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks/saverelations/{id}": {
            "put": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Replace the relations that select a planned job's fields",
                "description": "crops, pria_payees and location_areas replace the whole list when given; the job's own field list then becomes the fields they select.",
                "externalDocs": {
                    "description": "Help: Fieldwork plan admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                },
                "operationId": "put_api_agrifieldworks_saverelations_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWork id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "crops": {
                                        "description": "Crops as objects with an id; replaces the whole list",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "pria_payees": {
                                        "description": "PRIA payees as objects with an id; replaces the whole list",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "location_areas": {
                                        "description": "Location areas as objects with an id; replaces the whole list",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "AgrifieldWork (serializer groups classificator, agrifieldwork)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldWork2"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not the company's job"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanningedit",
                        "title": "Fieldwork plan admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanningedit/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks/distribution/{crop_period_id}": {
            "get": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "How a crop period's planned jobs are distributed across its fields",
                "description": "Returns { crop, customer, pria_payee, location_area, materialusages, fulfillment, capacity }: hectares, field counts and planned material amounts per crop, customer, PRIA payee and location area, and per work type the planned hectares against the capacity and the approved work done.",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                },
                "operationId": "get_api_agrifieldworks_distribution_get_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ crop, customer, pria_payee, location_area, materialusages, fulfillment, capacity }"
                    },
                    "404": {
                        "description": "Unknown crop period"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks/agrifields/{crop_period_id}": {
            "get": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Fields of one crop period, marked for one planned job",
                "description": "The live field-category fields of the company and of partners sharing them, with a crop year row that has a crop and a PRIA payee. rowclass is green for a field of the job agrifield_work_id, red for one it excludes. Returns an array of objects with: id, field_size, field_number, massive_number, name, crop_name, pria_payee_name, location_area_name, customer_name, company_name, rowclass",
                "externalDocs": {
                    "description": "Help: Fieldwork plan admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                },
                "operationId": "get_api_agrifieldworks_agrifields_get_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "agrifield_work_id",
                        "in": "query",
                        "description": "The job whose fields are marked",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of fields"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanningedit",
                        "title": "Fieldwork plan admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanningedit/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks/classificator/{crop_period_id}": {
            "get": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Crops, PRIA payees and location areas in use on one crop period's fields",
                "description": "Returns { crop, pria_payee, location_area }: the crops and PRIA payees of the company's fields in the crop period, and the company's location areas.",
                "externalDocs": {
                    "description": "Help: Fieldwork plan admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                },
                "operationId": "get_api_cropperiod_classificator_get_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ crop, pria_payee, location_area } (serializer group classificator)"
                    },
                    "404": {
                        "description": "Unknown crop period"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanningedit",
                        "title": "Fieldwork plan admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanningedit/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanningedit/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldsforplanning/{agrifield_work_id}": {
            "get": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Fields that can still be planned into one field job",
                "description": "For a job of the company: { agrifields, worktype, planitems_for_agrifieldwork }, the job's fields without a plan item for it, its work type and its plan items. {} for a partner's job.",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "get_api_plans2_agrifieldsforplanning_get_collection",
                "parameters": [
                    {
                        "name": "agrifield_work_id",
                        "in": "path",
                        "description": "AgrifieldWork id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ agrifields, worktype, planitems_for_agrifieldwork } (serializer groups default, planitem, classificator)"
                    },
                    "404": {
                        "description": "Not visible to the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldsforplanning/{id}/setagrifields": {
            "put": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Plan a field job on the selected fields for a date range",
                "description": "Creates one plan item per selected field, with the job's work type and planned materials. Returns the plan items created ([] when the job, agrifieldIds, from or to is missing).",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "put_api_agrifieldsforplanning_put_setagrifields",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWork id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "agrifieldIds": {
                                        "description": "Fields to plan the job for",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "from": {
                                        "description": "First day, as Y-m-d, for example 2026-08-28 (the time is set to noon)",
                                        "type": "string"
                                    },
                                    "to": {
                                        "description": "Last day, as Y-m-d (the time is set to noon)",
                                        "type": "string"
                                    },
                                    "saveparams": {
                                        "description": "{ worker: {id}, main_facility: {id}, secondary_facility: {id} } for every plan item created",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "List of Planitem (serializer groups default, planitem)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Planitem3"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldsforplanning/{id}/setplanparams": {
            "put": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Set the worker and facilities of plan items",
                "description": "Every listed plan item gets the saveparams worker, main and secondary facility (none when left out); a worker taken off a plan item is notified. Returns [].",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "put_api_agrifieldsforplanning_put_setplanparams",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldWork id (not used)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "planitemIds": {
                                        "description": "Plan items to change",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "saveparams": {
                                        "description": "{ worker: {id}, main_facility: {id}, secondary_facility: {id} }",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "[]"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks3-cropperiods": {
            "get": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Crop periods that have planned field jobs",
                "description": "Crop periods of the company's fields from the last six years, plus this year and the next two. Returns an array of objects with: id, name, is_active",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                },
                "operationId": "get_api_agrifieldworks3_cropperiods_get_collection",
                "responses": {
                    "200": {
                        "description": "List of { id, name, is_active }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks3-bycropperiod/{crop_period_id}": {
            "get": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Agrifields of one crop period grouped by the field job planned on them",
                "description": "Returns an array of objects with: agrifield_work_id, worktype, name, customer, crop_names_array, planitem_count, planned_start_time, planned_stop_time, planned_start_week, planned_stop_week, is_selected, agrifield_count",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                },
                "operationId": "get_api_plans2_agrifieldworks3_bycropperiod_get_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of field works (worktype and customer with serializer groups default, planitem, classificator)"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks3-weeks/{crop_period_id}": {
            "get": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "The weeks of one crop period",
                "description": "Returns the 52 ISO weeks of the crop period, each { weeknum, start, stop, monthname }",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                },
                "operationId": "get_api_plans2_agrifieldworks3_weeks_get_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of { weeknum, start, stop, monthname }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworks3-settoweek": {
            "put": {
                "tags": [
                    "AgrifieldWorks"
                ],
                "summary": "Moves the selected planned field jobs to another week of the crop period",
                "description": "Sets the planned start and stop of the selected field works of the company to the week's start and stop (at noon), or clears them for week 0. Returns [].",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                },
                "operationId": "put_api_agrifieldworks3_settoweek_put",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "selected_agrifield_works": {
                                        "description": "Field works to move, as objects with an agrifield_work_id field.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "week_obj": {
                                        "description": "Target week { weeknum, start, stop }; weeknum 0 clears the planned times.",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "[]"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    }
                ]
            }
        },
        "/api/login/{provider}": {
            "post": {
                "tags": [
                    "Auth"
                ],
                "summary": "Signs in with e-mail or username and password (pre-OAuth web client); returns the Worker with its API key",
                "operationId": "post_api_login_provider",
                "parameters": [
                    {
                        "name": "provider",
                        "in": "path",
                        "description": "Only \"email\" is served",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "email"
                            ]
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "email": {
                                        "description": "E-mail or username of a User (personal password), else username of a Worker (company password)",
                                        "type": "string"
                                    },
                                    "password": {
                                        "type": "string"
                                    },
                                    "step": {
                                        "description": "Always 1; the other steps of the old registration wizard answer login.unknown_error",
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Worker (groups auth, auth_user, baseattribute) with its API key; or {\"error\": slug}: login.wrong_username_password, login.user_does_not_exist, login.unknown_error"
                    }
                }
            }
        },
        "/api/cadastres": {
            "get": {
                "tags": [
                    "Cadastres"
                ],
                "summary": "Cadastre collection",
                "description": "The company's cadastres that are neither deleted nor archived, by name.",
                "externalDocs": {
                    "description": "Help: Cadastres (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/cadastres/"
                },
                "operationId": "get_api_cadastres_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from this Unix timestamp, including deleted and archived ones",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived cadastres and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Cadastre (serializer groups cadastre, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Cadastre5"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/cadastres",
                        "title": "Cadastres",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/cadastres/",
                            "en": "https://help.terake.com/en/fieldbook/cadastres/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Cadastres"
                ],
                "summary": "Create Cadastre",
                "description": "Creates a Cadastre, or modifies the one the body names by \"id\" or \"uuid\". A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Cadastres (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/cadastres/"
                },
                "operationId": "post_api_cadastres_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "cadastre_number": {
                                        "description": "Cadastral number, for example 12345:001:0010",
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "cadastrial_info": {
                                        "description": "Cadastral register data as text",
                                        "type": "string"
                                    },
                                    "geometry": {
                                        "description": "Geometry as text",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Cadastre (serializer groups cadastre, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Cadastre6"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/cadastres",
                        "title": "Cadastres",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/cadastres/",
                            "en": "https://help.terake.com/en/fieldbook/cadastres/"
                        }
                    }
                ]
            }
        },
        "/api/cadastres/{id}": {
            "get": {
                "tags": [
                    "Cadastres"
                ],
                "summary": "Get Cadastre",
                "description": "Cadastre by id or uuid.",
                "externalDocs": {
                    "description": "Help: Cadastres (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/cadastres/"
                },
                "operationId": "get_api_cadastres_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Cadastre id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Cadastre (serializer groups cadastre, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Cadastre6"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/cadastres",
                        "title": "Cadastres",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/cadastres/",
                            "en": "https://help.terake.com/en/fieldbook/cadastres/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Cadastres"
                ],
                "summary": "Update Cadastre",
                "description": "Modifies a Cadastre. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Cadastres (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/cadastres/"
                },
                "operationId": "put_api_cadastres_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Cadastre id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "cadastre_number": {
                                        "description": "Cadastral number, for example 12345:001:0010",
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "cadastrial_info": {
                                        "description": "Cadastral register data as text",
                                        "type": "string"
                                    },
                                    "geometry": {
                                        "description": "Geometry as text",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Cadastre (serializer groups cadastre, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Cadastre6"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Cadastre"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/cadastres",
                        "title": "Cadastres",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/cadastres/",
                            "en": "https://help.terake.com/en/fieldbook/cadastres/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Cadastres"
                ],
                "summary": "Delete Cadastre",
                "description": "Deletes a Cadastre by id or uuid (marks it deleted and archived). Returns the deleted Cadastre.",
                "externalDocs": {
                    "description": "Help: Cadastres (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/cadastres/"
                },
                "operationId": "delete_api_cadastres_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Cadastre id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Cadastre (serializer groups cadastre, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Cadastre6"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Cadastre"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/cadastres",
                        "title": "Cadastres",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/cadastres/",
                            "en": "https://help.terake.com/en/fieldbook/cadastres/"
                        }
                    }
                ]
            }
        },
        "/api/calendarevents/{id}": {
            "post": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Creates or modifies a calendar event attached to a parent object",
                "description": "With id 0 a new event of calendar_event_type at event_time is attached to parent_object; with the id of an event only its event_time changes.\n\nAnswers with the parent object (the facility or the worker) with its calendar events, or the event itself for another parent type.",
                "externalDocs": {
                    "description": "Help: Inventory (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/inventory/"
                },
                "operationId": "post_api_calendar_events_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "CalendarEvent id, 0 for a new one",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "parent_object": {
                                        "description": "Object the event belongs to, as an object with id and type (\"facility\" or \"worker\") fields",
                                        "type": "object"
                                    },
                                    "calendar_event_type": {
                                        "description": "Event type, as an object with an id field",
                                        "type": "object"
                                    },
                                    "event_time": {
                                        "description": "When the event takes place. Date and time as Y-m-d H:i:s, for example 2026-08-28 14:30:00.",
                                        "type": "string",
                                        "format": "date-time"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The parent object (serializer groups classificator, calendarevent)"
                    },
                    "404": {
                        "description": "No such event in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Deletes a calendar event",
                "description": "Marks the event deleted. Answers with its facility, else its worker, else the event.",
                "externalDocs": {
                    "description": "Help: Inventory (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/inventory/"
                },
                "operationId": "delete_api_calendar_events_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "CalendarEvent id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The parent object (serializer groups classificator, calendarevent)"
                    },
                    "403": {
                        "description": "The caller may not modify this event"
                    },
                    "404": {
                        "description": "No such event in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/clickstats/report": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Makes production line click stats as .xls file",
                "description": "Returns { file }, the web path of the generated spreadsheet. With weblink set it answers an HTML link instead.\n\nApproval: includes both approved and unapproved work.",
                "operationId": "get_api_clickstats_report_get",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Default: 29 days ago.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Default: today. At most 121 days are reported.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "weblink",
                        "in": "query",
                        "description": "Any true value answers an HTML page with the link",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ file }: the URL of the spreadsheet"
                    }
                },
                "deprecated": true
            }
        },
        "/api/companies": {
            "get": {
                "tags": [
                    "Companys"
                ],
                "summary": "Company collection",
                "description": "The caller's company, as a one-element array.",
                "externalDocs": {
                    "description": "Help: Company settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/companysettings/"
                },
                "operationId": "get_api_companies_get_collection",
                "parameters": [
                    {
                        "name": "all",
                        "in": "query",
                        "description": "ROLE_SUPERADMIN only. When truthy, returns every company in the installation instead of the caller's own.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Company (serializer groups default, companies, company_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Company5"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/companysettings",
                        "title": "Company settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/companysettings/",
                            "en": "https://help.terake.com/en/admin/companysettings/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Companys"
                ],
                "summary": "Create new Company",
                "description": "Always refused.",
                "externalDocs": {
                    "description": "Help: Company settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/companysettings/"
                },
                "operationId": "post_api_companies_post",
                "responses": {
                    "403": {
                        "description": "Always"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/companysettings",
                        "title": "Company settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/companysettings/",
                            "en": "https://help.terake.com/en/admin/companysettings/"
                        }
                    }
                ]
            }
        },
        "/api/companies/{id}": {
            "get": {
                "tags": [
                    "Companys"
                ],
                "summary": "Company by ID",
                "description": "The caller's own company whatever the id; a super admin or account manager gets the company with the id.",
                "externalDocs": {
                    "description": "Help: Company settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/companysettings/"
                },
                "operationId": "get_api_companies_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Company id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Company (serializer groups default, companies, company_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Company5"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/companysettings",
                        "title": "Company settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/companysettings/",
                            "en": "https://help.terake.com/en/admin/companysettings/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Companys"
                ],
                "summary": "Modifies Company",
                "description": "An administrator modifies their own company whatever the id; a super admin or account manager the company with the id, and also its invoice, test-period, verification and upload-size fields.",
                "externalDocs": {
                    "description": "Help: Company settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/companysettings/"
                },
                "operationId": "put_api_companies_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Company id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "regnr": {
                                        "type": "string"
                                    },
                                    "fieldbook_plan_comments": {
                                        "type": "boolean"
                                    },
                                    "fieldbook_workdone_comments": {
                                        "type": "boolean"
                                    },
                                    "is_creation_enabled": {
                                        "type": "boolean"
                                    },
                                    "is_lastname_first": {
                                        "type": "boolean"
                                    },
                                    "company_type": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "country_code": {
                                        "description": "{\"code\": ...} or {\"id\": ...}",
                                        "type": "object"
                                    },
                                    "currency_code": {
                                        "description": "{\"code\": ...} or {\"id\": ...}",
                                        "type": "object"
                                    },
                                    "language_code": {
                                        "type": "string"
                                    },
                                    "roster_visibility": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "send_welcome_letter": {
                                        "type": "boolean"
                                    },
                                    "workday_length": {
                                        "type": "number"
                                    },
                                    "overtime_length": {
                                        "type": "number"
                                    },
                                    "test_period_days": {
                                        "description": "Super admin and account manager only",
                                        "type": "number"
                                    },
                                    "is_invoice_paid": {
                                        "description": "Super admin and account manager only",
                                        "type": "boolean"
                                    },
                                    "is_regnr_verified": {
                                        "description": "Super admin and account manager only",
                                        "type": "boolean"
                                    },
                                    "upload_max_filesize": {
                                        "description": "Super admin and account manager only",
                                        "type": "integer"
                                    },
                                    "is_invoice_bad": {
                                        "description": "Super admin and account manager only",
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Company (serializer groups default, companies, company_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Company5"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "The caller is not an administrator"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/companysettings",
                        "title": "Company settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/companysettings/",
                            "en": "https://help.terake.com/en/admin/companysettings/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Companys"
                ],
                "summary": "Delete Company by ID",
                "description": "An administrator deletes their own company, a super admin any (?immediate=1: permanently at the next recycle-bin run instead of after 180 days). The company's other workers are deleted and its open work stopped. 204 with no body when the caller may not.",
                "externalDocs": {
                    "description": "Help: Company settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/companysettings/"
                },
                "operationId": "delete_api_companies_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Company id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "immediate",
                        "in": "query",
                        "description": "ROLE_SUPERADMIN only: delete permanently at the next recycle-bin run",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Company (serializer groups default, companies)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Company3"
                                }
                            }
                        }
                    },
                    "204": {
                        "description": "Not allowed; nothing changed"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/companysettings",
                        "title": "Company settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/companysettings/",
                            "en": "https://help.terake.com/en/admin/companysettings/"
                        }
                    }
                ]
            }
        },
        "/api/companyrestore": {
            "get": {
                "tags": [
                    "Companys"
                ],
                "summary": "Restores a soft-deleted Company",
                "description": "Clears the deletion of the caller's company; a super admin or account manager names the company by id. The deleted workers stay deleted.",
                "operationId": "get_api_company_restore",
                "responses": {
                    "200": {
                        "description": "The Company (serializer groups default, companies, company_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Company5"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/company_parameter/{parameter_code}/{id}": {
            "get": {
                "tags": [
                    "Companys"
                ],
                "summary": "Retrieves Company parameter data",
                "description": "One parameter of the company (e.g. file_store_mb). An administrator reads their own company whatever the id. An empty body when the company has no such parameter.",
                "externalDocs": {
                    "description": "Help: Company settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/companysettings/"
                },
                "operationId": "get_api_company_parameter_get",
                "parameters": [
                    {
                        "name": "parameter_code",
                        "in": "path",
                        "description": "Parameter code, e.g. file_store_mb",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Company id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The CompanyParameter (serializer group company_parameter)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CompanyParameter"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "The caller is not an administrator"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/companysettings",
                        "title": "Company settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/companysettings/",
                            "en": "https://help.terake.com/en/admin/companysettings/"
                        }
                    }
                ]
            }
        },
        "/api/companystats": {
            "get": {
                "tags": [
                    "Companys"
                ],
                "summary": "Usage counts for the caller's company over a period",
                "description": "Workers, main facilities, fields and finished work in the period. Returns {\"error\", \"error_slug\"} when from or to is missing or not a date, or the period is longer than 366 days.",
                "externalDocs": {
                    "description": "Help: Company settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/companysettings/"
                },
                "operationId": "get_api_companies_get_companystats",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Start of the period, Y-m-d",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "End of the period, Y-m-d",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "all",
                        "in": "query",
                        "description": "ROLE_SUPERADMIN only: present (any value) covers every company instead of the caller's own",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of company figures, or {\"error\", \"error_slug\"}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/companysettings",
                        "title": "Company settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/companysettings/",
                            "en": "https://help.terake.com/en/admin/companysettings/"
                        }
                    }
                ]
            }
        },
        "/api/costaccounts": {
            "get": {
                "tags": [
                    "CostAccounts"
                ],
                "summary": "CostAccount collection",
                "description": "The company's cost accounts by name.",
                "externalDocs": {
                    "description": "Help: Cost centers (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/costaccounts/"
                },
                "operationId": "get_api_costaccounts_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "Archived records and those deleted within 30 days instead",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of CostAccount (serializer groups default, costaccount_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/CostAccount2"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/costaccounts",
                        "title": "Cost centers",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/costaccounts/",
                            "en": "https://help.terake.com/en/admin/main/costaccounts/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "CostAccounts"
                ],
                "summary": "Create new CostAccount",
                "description": "Always creates a new row; an id in the body is ignored.",
                "externalDocs": {
                    "description": "Help: Cost centers (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/costaccounts/"
                },
                "operationId": "post_api_costaccounts_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "is_deleted": {
                                        "type": "boolean"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The CostAccount (serializer groups default, costaccount_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CostAccount2"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/costaccounts",
                        "title": "Cost centers",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/costaccounts/",
                            "en": "https://help.terake.com/en/admin/main/costaccounts/"
                        }
                    }
                ]
            }
        },
        "/api/costaccounts/{id}": {
            "get": {
                "tags": [
                    "CostAccounts"
                ],
                "summary": "CostAccount by ID or UUID",
                "externalDocs": {
                    "description": "Help: Cost centers (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/costaccounts/"
                },
                "operationId": "get_api_costaccounts_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "CostAccount id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The CostAccount (serializer groups default, costaccount_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CostAccount2"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not a cost account of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/costaccounts",
                        "title": "Cost centers",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/costaccounts/",
                            "en": "https://help.terake.com/en/admin/main/costaccounts/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/fieldbook/croprotation",
                        "title": "Crop rotation",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/croprotation/",
                            "en": "https://help.terake.com/en/fieldbook/croprotation/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "CostAccounts"
                ],
                "summary": "Modify CostAccount",
                "description": "A key the body leaves out keeps its value.",
                "externalDocs": {
                    "description": "Help: Cost centers (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/costaccounts/"
                },
                "operationId": "put_api_costaccounts_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "CostAccount id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "is_deleted": {
                                        "type": "boolean"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The CostAccount (serializer groups default, costaccount_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CostAccount2"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Not a cost account of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/costaccounts",
                        "title": "Cost centers",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/costaccounts/",
                            "en": "https://help.terake.com/en/admin/main/costaccounts/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "CostAccounts"
                ],
                "summary": "Delete CostAccount by ID or UUID",
                "externalDocs": {
                    "description": "Help: Cost centers (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/costaccounts/"
                },
                "operationId": "delete_api_costaccounts_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "CostAccount id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted CostAccount (serializer groups default, costaccount_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CostAccount2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify it"
                    },
                    "404": {
                        "description": "Not a cost account of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/costaccounts",
                        "title": "Cost centers",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/costaccounts/",
                            "en": "https://help.terake.com/en/admin/main/costaccounts/"
                        }
                    }
                ]
            }
        },
        "/api/costaccountrules": {
            "get": {
                "tags": [
                    "CostAccounts"
                ],
                "summary": "CostAccountRule collection",
                "description": "The company's cost account rules by name.",
                "externalDocs": {
                    "description": "Help: Cost center rules (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/costaccountrules/"
                },
                "operationId": "get_api_costaccountrules_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "Archived records and those deleted within 30 days instead",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of CostAccountRule (serializer groups classificator, costaccountrule)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/CostAccountRule"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/costaccountrules",
                        "title": "Cost center rules",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/costaccountrules/",
                            "en": "https://help.terake.com/en/admin/main/costaccountrules/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "CostAccounts"
                ],
                "summary": "Create new CostAccountRule",
                "description": "Always creates a new row; an id in the body is ignored.",
                "externalDocs": {
                    "description": "Help: Cost center rules (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/costaccountrules/"
                },
                "operationId": "post_api_costaccountrules_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "is_deleted": {
                                        "type": "boolean"
                                    },
                                    "cost_account": {
                                        "description": "CostAccount { \"id\": N }",
                                        "type": "object"
                                    },
                                    "worker": {
                                        "description": "Worker { \"id\": N }",
                                        "type": "object"
                                    },
                                    "worktype": {
                                        "description": "Worktype { \"id\": N }",
                                        "type": "object"
                                    },
                                    "main_facility": {
                                        "description": "Facility { \"id\": N }",
                                        "type": "object"
                                    },
                                    "agrifield": {
                                        "description": "Agrifield { \"id\": N }",
                                        "type": "object"
                                    },
                                    "project": {
                                        "description": "Project { \"id\": N }",
                                        "type": "object"
                                    },
                                    "crop": {
                                        "description": "Crop { \"id\": N }",
                                        "type": "object"
                                    },
                                    "sort_order": {
                                        "type": "integer"
                                    },
                                    "worker_ids": {
                                        "description": "Workers the rule applies to. Replaces the whole list; leaving it out empties it.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The CostAccountRule (serializer groups classificator, costaccountrule)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CostAccountRule"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "A worker_ids entry is not a worker of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/costaccountrules",
                        "title": "Cost center rules",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/costaccountrules/",
                            "en": "https://help.terake.com/en/admin/main/costaccountrules/"
                        }
                    }
                ]
            }
        },
        "/api/costaccountrules/{id}": {
            "get": {
                "tags": [
                    "CostAccounts"
                ],
                "summary": "CostAccountRule by ID or UUID",
                "externalDocs": {
                    "description": "Help: Cost center rules (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/costaccountrules/"
                },
                "operationId": "get_api_costaccountrules_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "CostAccountRule id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The CostAccountRule (serializer groups classificator, costaccountrule)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CostAccountRule"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not a rule of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/costaccountrules",
                        "title": "Cost center rules",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/costaccountrules/",
                            "en": "https://help.terake.com/en/admin/main/costaccountrules/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "CostAccounts"
                ],
                "summary": "Modify CostAccountRule",
                "description": "A key the body leaves out keeps its value, except worker_ids: leaving it out empties the list.",
                "externalDocs": {
                    "description": "Help: Cost center rules (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/costaccountrules/"
                },
                "operationId": "put_api_costaccountrules_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "CostAccountRule id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "cost_account": {
                                        "description": "CostAccount { \"id\": N }",
                                        "type": "object"
                                    },
                                    "worker_ids": {
                                        "description": "Workers the rule applies to. Replaces the whole list.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The CostAccountRule (serializer groups classificator, costaccountrule)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CostAccountRule"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "A worker_ids entry is not a worker of the company"
                    },
                    "500": {
                        "description": "Not a rule of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/costaccountrules",
                        "title": "Cost center rules",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/costaccountrules/",
                            "en": "https://help.terake.com/en/admin/main/costaccountrules/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "CostAccounts"
                ],
                "summary": "Delete CostAccountRule by ID or UUID",
                "externalDocs": {
                    "description": "Help: Cost center rules (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/costaccountrules/"
                },
                "operationId": "delete_api_costaccountrules_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "CostAccountRule id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted CostAccountRule (serializer groups classificator, costaccountrule)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CostAccountRule"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify it"
                    },
                    "404": {
                        "description": "Not a rule of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/costaccountrules",
                        "title": "Cost center rules",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/costaccountrules/",
                            "en": "https://help.terake.com/en/admin/main/costaccountrules/"
                        }
                    }
                ]
            }
        },
        "/api/crops": {
            "get": {
                "tags": [
                    "Crops"
                ],
                "summary": "Crop collection",
                "description": "The crops the company sees (own, generic and partner crops) that are neither deleted nor archived, by name.",
                "externalDocs": {
                    "description": "Help: Crops (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/crops/"
                },
                "operationId": "get_api_crops_list",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Unix timestamp: every row changed at or after it, deleted and archived included, for delta sync",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "With 1: rows archived by their owner or by the calling company, plus rows deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "groups",
                        "in": "query",
                        "description": "Comma-separated subset of the serializer groups this endpoint offers; narrows the response",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Crop (serializer groups crops, owner, baseattribute, archive)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Crop3"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/crops/",
                            "en": "https://help.terake.com/en/admin/main/crops/"
                        }
                    },
                    {
                        "route": "/fieldbook/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/crops/",
                            "en": "https://help.terake.com/en/fieldbook/crops/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Crops"
                ],
                "externalDocs": {
                    "description": "Help: Crops (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/crops/"
                },
                "operationId": "post_api_crops_create",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "properties": {
                                    "id": {
                                        "description": "Names an existing row to update instead of creating one",
                                        "type": "integer"
                                    },
                                    "uuid": {
                                        "description": "Same, by uuid (clients that create records offline)",
                                        "type": "string"
                                    },
                                    "import_type": {
                                        "description": "With \"file\" (the file import screen) the row to update is matched by outer_id first, then id, then uuid, within the calling company",
                                        "type": "string",
                                        "enum": [
                                            "file"
                                        ]
                                    },
                                    "outer_id": {
                                        "description": "Id in another system (the PRIA crop code for PRIA crops)",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "name": {
                                        "description": "Crop name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "base_name": {
                                        "description": "Name of the crop without variety",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "hex_color": {
                                        "description": "Colour on the field map, for example #00ff00",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "moisture_dry": {
                                        "description": "Moisture percentage of the dry crop",
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "crop_type": {
                                        "description": "{id} of a crop type; null clears it",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": [
                                            "object",
                                            "null"
                                        ]
                                    },
                                    "master_crop": {
                                        "description": "{id} of the crop this one was merged into; null clears it",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": [
                                            "object",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/crops/",
                            "en": "https://help.terake.com/en/admin/main/crops/"
                        }
                    },
                    {
                        "route": "/fieldbook/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/crops/",
                            "en": "https://help.terake.com/en/fieldbook/crops/"
                        }
                    }
                ]
            }
        },
        "/api/crops/merge/{mergerId}": {
            "put": {
                "tags": [
                    "Crops"
                ],
                "summary": "Merge crops",
                "description": "Merges the listed crops of the company (and its deleted crops of the same names) into the crop named in the path: they are marked deleted, and the fields and field works naming them move to that crop. Answers [].",
                "externalDocs": {
                    "description": "Help: Crops (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/crops/"
                },
                "operationId": "put_api_crops_merge",
                "parameters": [
                    {
                        "name": "mergerId",
                        "in": "path",
                        "description": "Id or uuid of the crop the others are merged into",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "crop_id_array": {
                                        "description": "Ids of the company's crops merged into the crop named in the path",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "An empty array"
                    },
                    "404": {
                        "description": "The merger is not visible to the company, or a listed crop is not the company's own"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/crops/",
                            "en": "https://help.terake.com/en/admin/main/crops/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/crops/",
                            "en": "https://help.terake.com/en/fieldbook/crops/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/crops/{id}": {
            "get": {
                "tags": [
                    "Crops"
                ],
                "externalDocs": {
                    "description": "Help: Crops (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/crops/"
                },
                "operationId": "get_api_crops_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/crops/",
                            "en": "https://help.terake.com/en/admin/main/crops/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/fieldbook/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/crops/",
                            "en": "https://help.terake.com/en/fieldbook/crops/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Crops"
                ],
                "externalDocs": {
                    "description": "Help: Crops (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/crops/"
                },
                "operationId": "put_api_crops_update",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "properties": {
                                    "name": {
                                        "description": "Crop name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "base_name": {
                                        "description": "Name of the crop without variety",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "outer_id": {
                                        "description": "Id in another system (the PRIA crop code for PRIA crops)",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "hex_color": {
                                        "description": "Colour on the field map, for example #00ff00",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "moisture_dry": {
                                        "description": "Moisture percentage of the dry crop",
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "crop_type": {
                                        "description": "{id} of a crop type; null clears it",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": [
                                            "object",
                                            "null"
                                        ]
                                    },
                                    "master_crop": {
                                        "description": "{id} of the crop this one was merged into; null clears it",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": [
                                            "object",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/crops/",
                            "en": "https://help.terake.com/en/admin/main/crops/"
                        }
                    },
                    {
                        "route": "/fieldbook/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/crops/",
                            "en": "https://help.terake.com/en/fieldbook/crops/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Crops"
                ],
                "externalDocs": {
                    "description": "Help: Crops (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/crops/"
                },
                "operationId": "delete_api_crops_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/crops/",
                            "en": "https://help.terake.com/en/admin/main/crops/"
                        }
                    },
                    {
                        "route": "/fieldbook/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/crops/",
                            "en": "https://help.terake.com/en/fieldbook/crops/"
                        }
                    }
                ]
            }
        },
        "/api/crops/{id}/togglearchive": {
            "put": {
                "tags": [
                    "Crops"
                ],
                "externalDocs": {
                    "description": "Help: Crops (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/crops/"
                },
                "operationId": "put_api_crops_togglearchive",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/crops/",
                            "en": "https://help.terake.com/en/admin/main/crops/"
                        }
                    },
                    {
                        "route": "/fieldbook/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/crops/",
                            "en": "https://help.terake.com/en/fieldbook/crops/"
                        }
                    }
                ]
            }
        },
        "/api/customers": {
            "get": {
                "tags": [
                    "Customers"
                ],
                "summary": "Customer collection",
                "description": "The company's customers that are neither deleted nor archived, by name, with their contact persons and main location.",
                "externalDocs": {
                    "description": "Help: Customers and partners (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/customers/"
                },
                "operationId": "get_api_customers_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived customers and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Only the customers of this department and its sub-departments, and those without a department",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Customer (serializer groups customer, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Customer9"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/customers",
                        "title": "Customers and partners",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/customers/",
                            "en": "https://help.terake.com/en/admin/main/customers/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Customers"
                ],
                "summary": "Create new Customer",
                "description": "Always creates a new customer of the company, whatever id the body carries. With import_type \"file\" (the web client's file import) a contact person and a main location are made from the customer_persons_* and location_* fields.",
                "externalDocs": {
                    "description": "Help: Customers and partners (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/customers/"
                },
                "operationId": "post_api_customers_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "description": "Up to 255 characters; longer is shortened",
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "description": "Up to 32 characters",
                                        "type": "string"
                                    },
                                    "registry_code": {
                                        "description": "Company code or personal id, up to 64 characters",
                                        "type": "string"
                                    },
                                    "email": {
                                        "type": "string"
                                    },
                                    "is_shared": {
                                        "description": "Whether the consumer company sees what is shared with this customer",
                                        "type": "boolean"
                                    },
                                    "sharing_start": {
                                        "description": "Start of the sharing period, Y-m-d H:i:s",
                                        "type": "string"
                                    },
                                    "sharing_end": {
                                        "description": "End of the sharing period, Y-m-d H:i:s",
                                        "type": "string"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    },
                                    "is_deleted": {
                                        "type": "boolean"
                                    },
                                    "agrifield": {
                                        "description": "Main location (work object), {\"id\": ...}",
                                        "type": "object"
                                    },
                                    "department": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "import_type": {
                                        "description": "\"file\" for a file import row",
                                        "type": "string"
                                    },
                                    "customer_persons_name": {
                                        "description": "Contact person name. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "customer_persons_email": {
                                        "description": "Contact person e-mail. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "customer_persons_phone": {
                                        "description": "Contact person phone. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "location_name": {
                                        "description": "Name of the location work object, matched against existing ones and created when missing. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "location_address": {
                                        "description": "Address of the location work object. Read only when import_type is file.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The new Customer (serializer groups customer, sharing, classificator, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Customer10"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/customers",
                        "title": "Customers and partners",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/customers/",
                            "en": "https://help.terake.com/en/admin/main/customers/"
                        }
                    }
                ]
            }
        },
        "/api/customers/{id}": {
            "get": {
                "tags": [
                    "Customers"
                ],
                "summary": "Customer by ID or UUID",
                "description": "One customer of the company, with its contact persons and the ids of the objects shared with it.",
                "externalDocs": {
                    "description": "Help: Customers and partners (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/customers/"
                },
                "operationId": "get_api_customers_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Customer id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Customer (serializer groups customer, customer_all, sharing, classificator, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Customer11"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/customers",
                        "title": "Customers and partners",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/customers/",
                            "en": "https://help.terake.com/en/admin/main/customers/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Customers"
                ],
                "summary": "Modify Customer",
                "description": "Modifies the company's customer with the fields the body carries (as in POST, without the file import fields).",
                "externalDocs": {
                    "description": "Help: Customers and partners (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/customers/"
                },
                "operationId": "put_api_customers_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Customer id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Customer (serializer groups customer, sharing, classificator, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Customer10"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not a customer of the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/customers",
                        "title": "Customers and partners",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/customers/",
                            "en": "https://help.terake.com/en/admin/main/customers/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Customers"
                ],
                "summary": "Delete Customer by ID or UUID",
                "description": "Marks the customer deleted and archived. Returns the deleted Customer.",
                "externalDocs": {
                    "description": "Help: Customers and partners (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/customers/"
                },
                "operationId": "delete_api_customers_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Customer id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Customer (serializer groups customer, classificator, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Customer12"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Customer"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/customers",
                        "title": "Customers and partners",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/customers/",
                            "en": "https://help.terake.com/en/admin/main/customers/"
                        }
                    }
                ]
            }
        },
        "/api/customer/{customer_id}/person/{id}": {
            "get": {
                "tags": [
                    "Customers"
                ],
                "summary": "Customer contact person",
                "description": "One active contact person of the customer, by person id.",
                "operationId": "get_api_customer_person_get",
                "parameters": [
                    {
                        "name": "customer_id",
                        "in": "path",
                        "description": "Customer id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Contact person id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The CustomerPerson (serializer groups customer, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CustomerPerson13"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Customer person not found"
                    }
                }
            },
            "post": {
                "tags": [
                    "Customers"
                ],
                "summary": "Creates or modifies a Customer contact person",
                "description": "Without a person id a new contact person of the customer; with one, that active contact person modified. The customer is stamped as updated either way.",
                "externalDocs": {
                    "description": "Help: Customers and partners (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/customers/"
                },
                "operationId": "post_api_customer_person_put",
                "parameters": [
                    {
                        "name": "customer_id",
                        "in": "path",
                        "description": "Customer id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "email": {
                                        "type": "string"
                                    },
                                    "phone": {
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The CustomerPerson (serializer groups customer, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CustomerPerson13"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "The customer is not the caller company's, or the person is not the customer's"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/customers",
                        "title": "Customers and partners",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/customers/",
                            "en": "https://help.terake.com/en/admin/main/customers/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Customers"
                ],
                "summary": "Deletes a Customer contact person",
                "description": "Marks the active contact person deleted. Returns {\"success\": 1}.",
                "externalDocs": {
                    "description": "Help: Customers and partners (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/customers/"
                },
                "operationId": "delete_api_customer_person_delete",
                "parameters": [
                    {
                        "name": "customer_id",
                        "in": "path",
                        "description": "Customer id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Contact person id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{\"success\": 1}"
                    },
                    "404": {
                        "description": "Customer person not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/customers",
                        "title": "Customers and partners",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/customers/",
                            "en": "https://help.terake.com/en/admin/main/customers/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/customer/{customer_id}/person": {
            "post": {
                "tags": [
                    "Customers"
                ],
                "summary": "Creates or modifies a Customer contact person",
                "description": "Without a person id a new contact person of the customer; with one, that active contact person modified. The customer is stamped as updated either way.",
                "operationId": "post_api_customer_person_post",
                "parameters": [
                    {
                        "name": "customer_id",
                        "in": "path",
                        "description": "Customer id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "email": {
                                        "type": "string"
                                    },
                                    "phone": {
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The CustomerPerson (serializer groups customer, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CustomerPerson13"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "The customer is not the caller company's, or the person is not the customer's"
                    }
                }
            }
        },
        "/api/customers/{customer_id}/share/{object_type}": {
            "put": {
                "tags": [
                    "Customers"
                ],
                "summary": "Sets which objects of one type are shared with a Customer",
                "description": "The objects of the type shared with the customer become exactly the listed ones.",
                "externalDocs": {
                    "description": "Help: Customers and partners (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/customers/"
                },
                "operationId": "put_api_customers_share_facility_put",
                "parameters": [
                    {
                        "name": "customer_id",
                        "in": "path",
                        "description": "Customer id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "object_type",
                        "in": "path",
                        "description": "One of: main_facility, facility, workobject, agrifield, worktype, material. facility equals main_facility, agrifield equals workobject",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "ids": {
                                        "description": "Objects of the given type shared with the Customer. Replaces the whole set",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Customer (serializer groups customer, sharing)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Customer13"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Unknown customer, object or type, or ids is not an array"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/customers",
                        "title": "Customers and partners",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/customers/",
                            "en": "https://help.terake.com/en/admin/main/customers/"
                        }
                    }
                ]
            }
        },
        "/api/customers/share_object/{object_type}/{object_id}": {
            "put": {
                "tags": [
                    "Customers"
                ],
                "summary": "Shares one object of the given type with customers",
                "description": "The caller's customers the object is shared with become exactly the listed ones. Returns {\"message\": \"message.success\"}, or {\"message\": \"message.record_not_found\"} for an unknown type or a partner_ids that is not an array.",
                "externalDocs": {
                    "description": "Help: Customers and partners (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/customers/"
                },
                "operationId": "put_api_customers_share_object_put",
                "parameters": [
                    {
                        "name": "object_type",
                        "in": "path",
                        "description": "One of: main_facility, facility, workobject, agrifield, worktype, material",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "object_id",
                        "in": "path",
                        "description": "Id of the object, of the type named by object_type",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "partner_ids": {
                                        "description": "Customers the object is shared with. Replaces the caller's set",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"message\": \"message.success\"} or {\"message\": \"message.record_not_found\"}"
                    },
                    "404": {
                        "description": "Unknown object or customer"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/customers",
                        "title": "Customers and partners",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/customers/",
                            "en": "https://help.terake.com/en/admin/main/customers/"
                        }
                    }
                ]
            }
        },
        "/api/invitationresponse": {
            "put": {
                "tags": [
                    "Customers"
                ],
                "summary": "Accepts a sharing invitation",
                "description": "The customer whose invitation carries the token starts sharing with the caller's company, and the caller's company gets the inviter as a customer. Returns \"ok\", or {\"token\": ..., \"customer\": null} for an unknown token.",
                "externalDocs": {
                    "description": "Help: Report view (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/report/"
                },
                "operationId": "put_api_customer_invitationresponse",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "token": {
                                        "description": "The 8-character token of the invitation letter",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "\"ok\", or {\"token\", \"customer\": null}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/report",
                        "title": "Report view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/report/",
                            "en": "https://help.terake.com/en/terake/report/"
                        }
                    }
                ]
            }
        },
        "/api/departments": {
            "get": {
                "tags": [
                    "Departments"
                ],
                "summary": "Department collection",
                "description": "The company's departments that are neither deleted nor archived, by name.",
                "externalDocs": {
                    "description": "Help: Departments (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/departments/"
                },
                "operationId": "get_api_departments_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived departments and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Department (serializer groups department_list, classificator, baseattribute, archive)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Department16"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/departments",
                        "title": "Departments",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/departments/",
                            "en": "https://help.terake.com/en/admin/main/departments/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Departments"
                ],
                "summary": "Create new Department",
                "description": "Creates a department of the company; a body \"id\" or \"uuid\" modifies that department instead.",
                "externalDocs": {
                    "description": "Help: Departments (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/departments/"
                },
                "operationId": "post_api_departments_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "is_division": {
                                        "type": "boolean"
                                    },
                                    "department": {
                                        "description": "Parent department, {\"id\": ...}",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Department (serializer groups department, classificator, baseattribute, auditcolumns, archive)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Department17"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/departments",
                        "title": "Departments",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/departments/",
                            "en": "https://help.terake.com/en/admin/main/departments/"
                        }
                    }
                ]
            }
        },
        "/api/departments/{id}": {
            "get": {
                "tags": [
                    "Departments"
                ],
                "summary": "Department by ID or UUID",
                "externalDocs": {
                    "description": "Help: Departments (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/departments/"
                },
                "operationId": "get_api_departments_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Department id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Department (serializer groups department, classificator, baseattribute, auditcolumns, archive)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Department17"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/departments",
                        "title": "Departments",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/departments/",
                            "en": "https://help.terake.com/en/admin/main/departments/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Departments"
                ],
                "summary": "Modifies Department",
                "description": "The body carries the fields of POST and the department's id, which must equal the path's.",
                "externalDocs": {
                    "description": "Help: Departments (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/departments/"
                },
                "operationId": "put_api_departments_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Department id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Department (serializer groups department, classificator, baseattribute, auditcolumns, archive)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Department17"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Department"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/departments",
                        "title": "Departments",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/departments/",
                            "en": "https://help.terake.com/en/admin/main/departments/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Departments"
                ],
                "summary": "Delete Department by ID or UUID",
                "description": "Marks the department deleted and archived; workers, facilities, fields, customers, sub-departments, work, plans, work types, roster items and messages lose the reference, its folder layouts are deleted. Returns the deleted Department.",
                "externalDocs": {
                    "description": "Help: Departments (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/departments/"
                },
                "operationId": "delete_api_departments_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Department id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Department (serializer groups department, classificator, baseattribute, auditcolumns, archive)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Department17"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Department"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/departments",
                        "title": "Departments",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/departments/",
                            "en": "https://help.terake.com/en/admin/main/departments/"
                        }
                    }
                ]
            }
        },
        "/api/departments/{id}/setworkers": {
            "put": {
                "tags": [
                    "Departments"
                ],
                "summary": "Assigns the Department to the listed Workers",
                "externalDocs": {
                    "description": "Help: Departments (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/departments/"
                },
                "operationId": "put_api_departments_set_setworkers",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Department id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "worker_id_array": {
                                        "description": "Workers moved into the department",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"success\": true}"
                    },
                    "404": {
                        "description": "The department or a worker is not the caller company's"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/departments",
                        "title": "Departments",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/departments/",
                            "en": "https://help.terake.com/en/admin/main/departments/"
                        }
                    }
                ]
            }
        },
        "/api/devices": {
            "get": {
                "tags": [
                    "Devices"
                ],
                "summary": "Company devices",
                "description": "The devices of the caller's company, by name. A device belongs to the company of the worker who registered it from the app; devices registered before 2026-09-25 are not listed. Deleted devices are left out.",
                "externalDocs": {
                    "description": "Help: Company settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/companysettings/"
                },
                "operationId": "get_api_devices_list",
                "parameters": [
                    {
                        "name": "named",
                        "in": "query",
                        "description": "true: only devices that have a name",
                        "required": false,
                        "schema": {
                            "type": "boolean",
                            "default": false
                        },
                        "example": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of devices",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            },
                                            "uuid": {
                                                "type": "string"
                                            },
                                            "name": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "device_manufacturer": {
                                                "type": "string"
                                            },
                                            "device_model": {
                                                "type": "string"
                                            },
                                            "android_version": {
                                                "type": "string"
                                            },
                                            "terake_version": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "hardware_serial": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ]
                                            },
                                            "updated_at_timestamp": {
                                                "type": "integer"
                                            },
                                            "worker": {
                                                "description": "The worker who registered the device: { id, fullname }",
                                                "type": [
                                                    "object",
                                                    "null"
                                                ]
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller is not an administrator"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/companysettings",
                        "title": "Company settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/companysettings/",
                            "en": "https://help.terake.com/en/admin/companysettings/"
                        }
                    }
                ]
            }
        },
        "/api/directo-status/{integration_id}": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Directo file status per day",
                "description": "The company's workdones per day of the period (all, approved, not approved) with the day's resources file of the integration. An integration of another company gives [].",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "get_directo-status-get",
                "parameters": [
                    {
                        "name": "integration_id",
                        "in": "path",
                        "description": "Integration id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d; the first day of this month by default",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, inclusive; the last day of this month by default",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of {start_date, total_count, approved_count, not_approved_count, file_name, send_time, file_response_code, file_response}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/sync-directo-workers": {
            "post": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Imports Directo's workers",
                "description": "Maps each Directo user to a worker of the company (by the partner mapping, personal code, outer id or name), creating the worker when none matches; fills an empty e-mail and outer id. Terake's integration service (company_id of the body) or an administrator (own company).",
                "operationId": "post_sync-directo-workers-post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "company_id": {
                                        "description": "The company, for Terake's integration service",
                                        "type": "integer"
                                    },
                                    "integration_partner_id": {
                                        "type": "integer"
                                    },
                                    "classificator_code": {
                                        "type": "string",
                                        "example": "worker"
                                    },
                                    "objects": {
                                        "type": "array",
                                        "items": {
                                            "properties": {
                                                "outer_id": {
                                                    "type": "string"
                                                },
                                                "fullname": {
                                                    "type": "string"
                                                },
                                                "firstname": {
                                                    "type": "string"
                                                },
                                                "lastname": {
                                                    "type": "string"
                                                },
                                                "email": {
                                                    "type": "string"
                                                },
                                                "unix_timestamp": {
                                                    "type": "integer"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{created, updated, mapped}, or {error: alert.not_allowed}"
                    }
                }
            }
        },
        "/api/integration-partner-bookmarks/{integration_partner_id}/{company_id}": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Partner synchronisation bookmarks",
                "description": "The newest partner timestamp of the company's partner workers, work objects, customers, fuels, rosteritems and facilities. Terake's integration service names the company in the path; an administrator gets the own company whatever the path says.",
                "operationId": "get_integration-partner-bookmarks-get",
                "parameters": [
                    {
                        "name": "integration_partner_id",
                        "in": "path",
                        "description": "IntegrationPartner id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company_id",
                        "in": "path",
                        "description": "Company id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{worker, agrifield, customer, fuel, rosteritem, facility}: unix timestamps or null; {error: alert.not_allowed} for another caller"
                    },
                    "404": {
                        "description": "{error: alert.not_allowed}: no such company or partner"
                    }
                }
            }
        },
        "/api/sync-directo-workobjects": {
            "post": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Imports Directo's projects",
                "description": "Each project with a name of three characters or more becomes a work object of the company, with its customer, both found (partner mapping, outer id, registry code, name) or created and mapped to the partner. Terake's integration service (company_id of the body) or an administrator (own company).",
                "operationId": "post_sync-directo-workobjects-post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "company_id": {
                                        "description": "The company, for Terake's integration service",
                                        "type": "integer"
                                    },
                                    "integration_partner_id": {
                                        "type": "integer"
                                    },
                                    "objects": {
                                        "type": "array",
                                        "items": {
                                            "properties": {
                                                "code": {
                                                    "type": "string"
                                                },
                                                "name": {
                                                    "type": "string"
                                                },
                                                "customer": {
                                                    "description": "Registry code",
                                                    "type": "string"
                                                },
                                                "customername": {
                                                    "type": "string"
                                                },
                                                "object": {
                                                    "type": "string"
                                                },
                                                "unix_timestamp": {
                                                    "type": "integer"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{created, updated, mapped}, or {error: alert.not_allowed}"
                    }
                }
            }
        },
        "/api/sync-directo-vacations": {
            "post": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Imports Directo's absences",
                "description": "Each absence of a mapped, live worker that ends within the last month becomes (or updates) the worker's vacation rosteritem; the newest timestamp is kept as the rosteritem bookmark. Terake's integration service (company_id of the body) or an administrator (own company).",
                "operationId": "post_sync-directo-vacations-post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "company_id": {
                                        "description": "The company, for Terake's integration service",
                                        "type": "integer"
                                    },
                                    "integration_partner_id": {
                                        "type": "integer"
                                    },
                                    "objects": {
                                        "type": "array",
                                        "items": {
                                            "properties": {
                                                "code": {
                                                    "type": "integer"
                                                },
                                                "employee_id": {
                                                    "type": "string"
                                                },
                                                "from_time": {
                                                    "type": "string"
                                                },
                                                "to_time": {
                                                    "description": "Inclusive",
                                                    "type": "string"
                                                },
                                                "type": {
                                                    "type": "string"
                                                },
                                                "unix_timestamp": {
                                                    "type": "integer"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{imported, created, updated, mapped, ignored, not_changed, deleted}, or {error: alert.not_allowed}"
                    }
                }
            }
        },
        "/api/sync-directo-items": {
            "post": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Imports Directo's items",
                "description": "Items of class 7 with a code of four characters or more become facilities of the company, found (partner mapping, outer id, name) or created and mapped to the partner. Terake's integration service (company_id of the body) or an administrator (own company).",
                "operationId": "post_sync-directo-items-post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "company_id": {
                                        "description": "The company, for Terake's integration service",
                                        "type": "integer"
                                    },
                                    "integration_partner_id": {
                                        "type": "integer"
                                    },
                                    "items": {
                                        "type": "array",
                                        "items": {
                                            "properties": {
                                                "code": {
                                                    "type": "string"
                                                },
                                                "name": {
                                                    "type": "string"
                                                },
                                                "class": {
                                                    "type": "string"
                                                },
                                                "unix_timestamp": {
                                                    "type": "integer"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{created, updated, mapped}, or {error: alert.not_allowed}"
                    }
                }
            }
        },
        "/api/send-directo-file/{integration_id}/{accounting_date}": {
            "post": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Sends a day's resources file to Directo",
                "description": "The day's approved worker and machine hours as Directo's resources XML, stored as the day's file of the company's integration and posted to Directo. Administrators only.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "post_send-directo-file-post",
                "parameters": [
                    {
                        "name": "integration_id",
                        "in": "path",
                        "description": "Integration id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "accounting_date",
                        "in": "path",
                        "description": "Date as Y-m-d",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{file_name, file_response_code}, or {error: 'no data'}"
                    },
                    "403": {
                        "description": "Not an administrator"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/directo-file/{integration_id}/{accounting_date}": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Downloads a day's resources file",
                "description": "The resources XML stored for the day by the company's integration, as an attachment. Administrators only.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "get_directo-file-get",
                "parameters": [
                    {
                        "name": "integration_id",
                        "in": "path",
                        "description": "Integration id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "accounting_date",
                        "in": "path",
                        "description": "Date as Y-m-d",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The XML file",
                        "content": {
                            "application/xml": {}
                        }
                    },
                    "403": {
                        "description": "Not an administrator"
                    },
                    "404": {
                        "description": "No file for the day"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/documenttypes": {
            "get": {
                "tags": [
                    "Document types"
                ],
                "externalDocs": {
                    "description": "Help: Document types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/documenttypes/"
                },
                "operationId": "get_api_documenttypes_list",
                "parameters": [
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "With 1: rows archived by their owner or by the calling company, plus rows deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Unix timestamp: every row changed at or after it, deleted and archived included, for delta sync",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "groups",
                        "in": "query",
                        "description": "Comma-separated subset of the serializer groups this endpoint offers; narrows the response",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/documenttypes",
                        "title": "Document types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/documenttypes/",
                            "en": "https://help.terake.com/en/admin/main/documenttypes/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Document types"
                ],
                "externalDocs": {
                    "description": "Help: Document types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/documenttypes/"
                },
                "operationId": "post_api_documenttypes_create",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "required": [
                                    "name"
                                ],
                                "properties": {
                                    "id": {
                                        "description": "Names an existing row to update instead of creating one",
                                        "type": "integer"
                                    },
                                    "uuid": {
                                        "description": "Same, by uuid (clients that create records offline)",
                                        "type": "string"
                                    },
                                    "import_type": {
                                        "description": "With \"file\" (the file import screen) the row to update is matched by outer_id first, then id, then uuid, within the calling company",
                                        "type": "string",
                                        "enum": [
                                            "file"
                                        ]
                                    },
                                    "outer_id": {
                                        "description": "The external identifier a file import matches on; only read with import_type=file",
                                        "type": "string"
                                    },
                                    "name": {
                                        "description": "Document type name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "usage_id": {
                                        "description": "Where the type is offered: the usage id the client knows",
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/documenttypes",
                        "title": "Document types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/documenttypes/",
                            "en": "https://help.terake.com/en/admin/main/documenttypes/"
                        }
                    }
                ]
            }
        },
        "/api/documenttypes/{id}": {
            "get": {
                "tags": [
                    "Document types"
                ],
                "externalDocs": {
                    "description": "Help: Document types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/documenttypes/"
                },
                "operationId": "get_api_documenttypes_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/documenttypes",
                        "title": "Document types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/documenttypes/",
                            "en": "https://help.terake.com/en/admin/main/documenttypes/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Document types"
                ],
                "externalDocs": {
                    "description": "Help: Document types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/documenttypes/"
                },
                "operationId": "put_api_documenttypes_update",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "properties": {
                                    "name": {
                                        "description": "Document type name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "usage_id": {
                                        "description": "Where the type is offered: the usage id the client knows",
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/documenttypes",
                        "title": "Document types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/documenttypes/",
                            "en": "https://help.terake.com/en/admin/main/documenttypes/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Document types"
                ],
                "externalDocs": {
                    "description": "Help: Document types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/documenttypes/"
                },
                "operationId": "delete_api_documenttypes_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/documenttypes",
                        "title": "Document types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/documenttypes/",
                            "en": "https://help.terake.com/en/admin/main/documenttypes/"
                        }
                    }
                ]
            }
        },
        "/api/documenttypes/{id}/togglearchive": {
            "put": {
                "tags": [
                    "Document types"
                ],
                "externalDocs": {
                    "description": "Help: Document types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/documenttypes/"
                },
                "operationId": "put_api_documenttypes_togglearchive",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/documenttypes",
                        "title": "Document types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/documenttypes/",
                            "en": "https://help.terake.com/en/admin/main/documenttypes/"
                        }
                    }
                ]
            }
        },
        "/api/send-report": {
            "post": {
                "tags": [
                    "Reports"
                ],
                "summary": "Sends a Workdone report to an e-mail address",
                "description": "Sends a report to the customer person's, else the customer's, else the given addresses. With title_slug heading.finished_works the letter is a works overview of the caller's company's Workdones named in ids, with their signed documents; otherwise it prints fields and table_data (with the signatures of the signed documents listed in table_data for heading.admin_signed_documents). The letter links to the report in the web app. Returns { success: great } once the mail is queued, { error: login.error_email_not_set } when no address is known. customer_id must name a customer of the caller's company.",
                "operationId": "post_api_send_report",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "customer_id": {
                                        "description": "Customer of the caller's company the report is for",
                                        "type": "integer"
                                    },
                                    "customer_person_id": {
                                        "description": "Contact person of that customer; their address is used when set",
                                        "type": "integer"
                                    },
                                    "email": {
                                        "description": "Addresses separated by spaces, commas, semicolons or |, used when neither the person nor the customer has one",
                                        "type": "string"
                                    },
                                    "data_url": {
                                        "description": "API path whose response is rendered into the report",
                                        "type": "string"
                                    },
                                    "fields": {
                                        "description": "Columns to render, in order ({name, title})",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "table_data": {
                                        "description": "Rows to render",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "ids": {
                                        "description": "Records to include",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "report_name": {
                                        "description": "Title printed on the report",
                                        "type": "string"
                                    },
                                    "title_slug": {
                                        "description": "Translation slug of the report title; heading.finished_works and heading.admin_signed_documents change the letter",
                                        "type": "string"
                                    },
                                    "from_date": {
                                        "description": "Start of the reported period. Date as Y-m-d, for example 2026-08-28.",
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "to_date": {
                                        "description": "End of the reported period. Date as Y-m-d, for example 2026-08-28.",
                                        "type": "string",
                                        "format": "date"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ success: great }, or { error: login.error_email_not_set }"
                    }
                }
            }
        },
        "/api/send-calendar": {
            "post": {
                "tags": [
                    "Reports"
                ],
                "summary": "Sends a link to the calendar to e-mail addresses",
                "description": "Stores the roster, plan and holiday rows of the period as a public calendar and e-mails its link to each address. Returns { success: great }.",
                "externalDocs": {
                    "description": "Help: Roster timeline (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/schedule/"
                },
                "operationId": "post_api_send_calendar",
                "parameters": [
                    {
                        "name": "only_rosteritem",
                        "in": "query",
                        "description": "When given, only roster rows are included",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "email": {
                                        "description": "Addresses separated by spaces, commas, semicolons or |; entries without @ are skipped",
                                        "type": "string"
                                    },
                                    "from": {
                                        "description": "Start of the period, any date PHP reads. Defaults to 60 days ago.",
                                        "type": "string"
                                    },
                                    "to": {
                                        "description": "End of the period, any date PHP reads. Defaults to 60 days ahead.",
                                        "type": "string"
                                    },
                                    "worker_ids": {
                                        "description": "Workers whose rows are included; all when empty",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "incl_not_locked": {
                                        "description": "Include rows that are not locked",
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ success: great }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    }
                ]
            }
        },
        "/api/sendinvitationletter": {
            "post": {
                "tags": [
                    "Reports"
                ],
                "summary": "Sends a partnership invitation to a customer's e-mail address",
                "description": "Applies the body to the caller's customer named by id (as the customer form saves it), marks it shared with a new invitation token and e-mails the invitation link. Returns the customer; { error: login.error_email_not_set } when there is no such customer, { error: login.unknown_error } when its address is shorter than 5 or longer than 251 characters.",
                "externalDocs": {
                    "description": "Help: Admin Settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/index/"
                },
                "operationId": "post_api_customer_sendinvitationletter",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Customer of the caller's company",
                                        "type": "integer"
                                    },
                                    "lng": {
                                        "description": "Language of the letter, two letters (en when omitted)",
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "email": {
                                        "type": "string"
                                    },
                                    "is_deleted": {
                                        "type": "boolean"
                                    },
                                    "is_shared": {
                                        "type": "boolean"
                                    },
                                    "sharing_start": {
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "sharing_end": {
                                        "type": "string",
                                        "format": "date-time"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The customer (serializer group customer), or an error slug"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/customers",
                        "title": "Customers and partners",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/customers/",
                            "en": "https://help.terake.com/en/admin/main/customers/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/facilities": {
            "get": {
                "tags": [
                    "Facilities"
                ],
                "summary": "All Facilities list",
                "description": "List of Facilities: the company's own and those partners currently share with it, by name.\nThe response has a fixed structure and may not include every field these records carry elsewhere in the API.",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "get_api_facilities_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Return only records updated on or after Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1 then return archived records and those deleted within 30 days instead (\"archived\" works too)",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Department (division): the company's own facilities of it, of its direct children, or without a department",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of {id, name, reg_number, is_main_facility, is_secondary_facility, is_maintainable, is_replaceable, show_in_map, fault_severity, rowclass, outer_id, vin, serial_number, qr, nfc, facility_type, company, department, maintenance_worker, storage_worker, agrifield, customer, customer_person, facility_params}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Create Facility",
                "description": "Creates new Facility, or updates the one the body names by id or uuid (with import_type=file:\nby outer_id, id or uuid). A facility without a type gets the generic type.",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "post_api_facilities_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "reg_number": {
                                        "type": "string"
                                    },
                                    "vin": {
                                        "type": "string"
                                    },
                                    "nfc": {
                                        "type": "string"
                                    },
                                    "linkable_reg_number": {
                                        "type": "string"
                                    },
                                    "serial_number": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "qr": {
                                        "description": "QR text; a QR image is rendered for it",
                                        "type": "string"
                                    },
                                    "is_main_facility": {
                                        "type": "boolean"
                                    },
                                    "is_secondary_facility": {
                                        "type": "boolean"
                                    },
                                    "is_maintainable": {
                                        "type": "boolean"
                                    },
                                    "is_replaceable": {
                                        "type": "boolean"
                                    },
                                    "show_in_map": {
                                        "type": "boolean"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    },
                                    "auto_workdone_duration": {
                                        "type": "integer"
                                    },
                                    "department": {
                                        "description": "Department { \"id\": N }",
                                        "type": "object"
                                    },
                                    "facility_type": {
                                        "description": "FacilityType { \"id\": N }",
                                        "type": "object"
                                    },
                                    "maintenance_worker": {
                                        "description": "Worker { \"id\": N }",
                                        "type": "object"
                                    },
                                    "storage_worker": {
                                        "description": "Worker { \"id\": N }",
                                        "type": "object"
                                    },
                                    "inspection_schedule": {
                                        "description": "InspectionMasterTemplate { \"id\": N }",
                                        "type": "object"
                                    },
                                    "agrifield": {
                                        "description": "Agrifield { \"id\": N }",
                                        "type": "object"
                                    },
                                    "customer": {
                                        "description": "Customer { \"id\": N }",
                                        "type": "object"
                                    },
                                    "customer_person": {
                                        "description": "CustomerPerson { \"id\": N }",
                                        "type": "object"
                                    },
                                    "accounting_unit_type": {
                                        "description": "AccountingUnitType { \"id\": N }",
                                        "type": "object"
                                    },
                                    "facility_params": {
                                        "description": "{ \"enginehours_rate\": N, \"kilometers_rate\": N }; removed when both are 0",
                                        "type": "object"
                                    },
                                    "import_type": {
                                        "description": "\"file\" from the file import screen",
                                        "type": "string"
                                    },
                                    "customer_persons_name": {
                                        "description": "Contact person name. The customer and contact person are created when none matches. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "customer_persons_email": {
                                        "description": "E-mail of the contact person named in customer_persons_name. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "customer_persons_phone": {
                                        "description": "Phone of the contact person named in customer_persons_name. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "location_name": {
                                        "description": "Name of the location workobject. Matched against existing workobjects and created when missing. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "location_address": {
                                        "description": "Address stored on the location workobject. Read only when import_type is file.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Facility (serializer groups owner, facility, classificator, calendarevent, baseattribute, archive, sharing, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Facility3"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/facilities/{id}": {
            "get": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Get Facility",
                "description": "Returns Facility by ID or UUID",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "get_api_facilities_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Facility uuid, used instead of the path value",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Facility (serializer groups owner, facility, classificator, calendarevent, baseattribute, archive, sharing, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Facility3"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found among the facilities of the partner companies"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Modify Facility",
                "description": "Update Facility. The body must repeat the path id as \"id\". Every failure of the lookup, the\nrights check or the mapping answers 200 with {\"error\": \"Other error\"}.",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "put_api_facilities_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Must equal the path id",
                                        "type": "string"
                                    },
                                    "update_odometer": {
                                        "description": "Present (any value) stores odometer_last_value on the facility and records a telemetry reading.",
                                        "type": "boolean"
                                    },
                                    "odometer_last_value": {
                                        "description": "Odometer reading in kilometres. Read only when update_odometer is sent.",
                                        "type": "number"
                                    },
                                    "update_enginehours": {
                                        "description": "Present (any value) stores enginehours_last_value on the facility and records a telemetry reading.",
                                        "type": "boolean"
                                    },
                                    "enginehours_last_value": {
                                        "description": "Engine hour reading. Read only when update_enginehours is sent.",
                                        "type": "number"
                                    },
                                    "qr_image": {
                                        "description": "{ \"qr_text\": \"...\" }; without it the QR image is removed",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Facility (serializer groups owner, facility_list, facility, classificator, calendarevent, baseattribute, archive, sharing, auditcolumns), or {\"error\": \"Other error\"}",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Facility4"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Delete Facility",
                "description": "Deletes Facility by ID or UUID (soft delete; its QR image is removed)",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "delete_api_facilities_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Facility (serializer groups owner, facility, archive)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Facility5"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Facility"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/main_facility": {
            "post": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Create Facility",
                "description": "Creates new Facility, or updates the one the body names by id or uuid (with import_type=file:\nby outer_id, id or uuid). A facility without a type gets the generic type.",
                "externalDocs": {
                    "description": "Help: Completed works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workdones/"
                },
                "operationId": "post_api_main_facility_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "reg_number": {
                                        "type": "string"
                                    },
                                    "vin": {
                                        "type": "string"
                                    },
                                    "nfc": {
                                        "type": "string"
                                    },
                                    "linkable_reg_number": {
                                        "type": "string"
                                    },
                                    "serial_number": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "qr": {
                                        "description": "QR text; a QR image is rendered for it",
                                        "type": "string"
                                    },
                                    "is_main_facility": {
                                        "type": "boolean"
                                    },
                                    "is_secondary_facility": {
                                        "type": "boolean"
                                    },
                                    "is_maintainable": {
                                        "type": "boolean"
                                    },
                                    "is_replaceable": {
                                        "type": "boolean"
                                    },
                                    "show_in_map": {
                                        "type": "boolean"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    },
                                    "auto_workdone_duration": {
                                        "type": "integer"
                                    },
                                    "department": {
                                        "description": "Department { \"id\": N }",
                                        "type": "object"
                                    },
                                    "facility_type": {
                                        "description": "FacilityType { \"id\": N }",
                                        "type": "object"
                                    },
                                    "maintenance_worker": {
                                        "description": "Worker { \"id\": N }",
                                        "type": "object"
                                    },
                                    "storage_worker": {
                                        "description": "Worker { \"id\": N }",
                                        "type": "object"
                                    },
                                    "inspection_schedule": {
                                        "description": "InspectionMasterTemplate { \"id\": N }",
                                        "type": "object"
                                    },
                                    "agrifield": {
                                        "description": "Agrifield { \"id\": N }",
                                        "type": "object"
                                    },
                                    "customer": {
                                        "description": "Customer { \"id\": N }",
                                        "type": "object"
                                    },
                                    "customer_person": {
                                        "description": "CustomerPerson { \"id\": N }",
                                        "type": "object"
                                    },
                                    "accounting_unit_type": {
                                        "description": "AccountingUnitType { \"id\": N }",
                                        "type": "object"
                                    },
                                    "facility_params": {
                                        "description": "{ \"enginehours_rate\": N, \"kilometers_rate\": N }; removed when both are 0",
                                        "type": "object"
                                    },
                                    "import_type": {
                                        "description": "\"file\" from the file import screen",
                                        "type": "string"
                                    },
                                    "customer_persons_name": {
                                        "description": "Contact person name. The customer and contact person are created when none matches. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "customer_persons_email": {
                                        "description": "E-mail of the contact person named in customer_persons_name. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "customer_persons_phone": {
                                        "description": "Phone of the contact person named in customer_persons_name. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "location_name": {
                                        "description": "Name of the location workobject. Matched against existing workobjects and created when missing. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "location_address": {
                                        "description": "Address stored on the location workobject. Read only when import_type is file.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Facility (serializer groups owner, facility, classificator, calendarevent, baseattribute, archive, sharing, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Facility3"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    }
                ]
            }
        },
        "/api/secondary_facility": {
            "post": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Create Facility",
                "description": "Creates new Facility, or updates the one the body names by id or uuid (with import_type=file:\nby outer_id, id or uuid). A facility without a type gets the generic type.",
                "externalDocs": {
                    "description": "Help: Completed works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workdones/"
                },
                "operationId": "post_api_secondary_facility_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "reg_number": {
                                        "type": "string"
                                    },
                                    "vin": {
                                        "type": "string"
                                    },
                                    "nfc": {
                                        "type": "string"
                                    },
                                    "linkable_reg_number": {
                                        "type": "string"
                                    },
                                    "serial_number": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "qr": {
                                        "description": "QR text; a QR image is rendered for it",
                                        "type": "string"
                                    },
                                    "is_main_facility": {
                                        "type": "boolean"
                                    },
                                    "is_secondary_facility": {
                                        "type": "boolean"
                                    },
                                    "is_maintainable": {
                                        "type": "boolean"
                                    },
                                    "is_replaceable": {
                                        "type": "boolean"
                                    },
                                    "show_in_map": {
                                        "type": "boolean"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    },
                                    "auto_workdone_duration": {
                                        "type": "integer"
                                    },
                                    "department": {
                                        "description": "Department { \"id\": N }",
                                        "type": "object"
                                    },
                                    "facility_type": {
                                        "description": "FacilityType { \"id\": N }",
                                        "type": "object"
                                    },
                                    "maintenance_worker": {
                                        "description": "Worker { \"id\": N }",
                                        "type": "object"
                                    },
                                    "storage_worker": {
                                        "description": "Worker { \"id\": N }",
                                        "type": "object"
                                    },
                                    "inspection_schedule": {
                                        "description": "InspectionMasterTemplate { \"id\": N }",
                                        "type": "object"
                                    },
                                    "agrifield": {
                                        "description": "Agrifield { \"id\": N }",
                                        "type": "object"
                                    },
                                    "customer": {
                                        "description": "Customer { \"id\": N }",
                                        "type": "object"
                                    },
                                    "customer_person": {
                                        "description": "CustomerPerson { \"id\": N }",
                                        "type": "object"
                                    },
                                    "accounting_unit_type": {
                                        "description": "AccountingUnitType { \"id\": N }",
                                        "type": "object"
                                    },
                                    "facility_params": {
                                        "description": "{ \"enginehours_rate\": N, \"kilometers_rate\": N }; removed when both are 0",
                                        "type": "object"
                                    },
                                    "import_type": {
                                        "description": "\"file\" from the file import screen",
                                        "type": "string"
                                    },
                                    "customer_persons_name": {
                                        "description": "Contact person name. The customer and contact person are created when none matches. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "customer_persons_email": {
                                        "description": "E-mail of the contact person named in customer_persons_name. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "customer_persons_phone": {
                                        "description": "Phone of the contact person named in customer_persons_name. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "location_name": {
                                        "description": "Name of the location workobject. Matched against existing workobjects and created when missing. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "location_address": {
                                        "description": "Address stored on the location workobject. Read only when import_type is file.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Facility (serializer groups owner, facility, classificator, calendarevent, baseattribute, archive, sharing, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Facility3"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    }
                ]
            }
        },
        "/api/maintenance_unit": {
            "post": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Create Facility",
                "description": "Creates new Facility, or updates the one the body names by id or uuid (with import_type=file:\nby outer_id, id or uuid). A facility without a type gets the generic type.",
                "externalDocs": {
                    "description": "Help: Completed works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workdones/"
                },
                "operationId": "post_api_maintenance_unit_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "reg_number": {
                                        "type": "string"
                                    },
                                    "vin": {
                                        "type": "string"
                                    },
                                    "nfc": {
                                        "type": "string"
                                    },
                                    "linkable_reg_number": {
                                        "type": "string"
                                    },
                                    "serial_number": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "qr": {
                                        "description": "QR text; a QR image is rendered for it",
                                        "type": "string"
                                    },
                                    "is_main_facility": {
                                        "type": "boolean"
                                    },
                                    "is_secondary_facility": {
                                        "type": "boolean"
                                    },
                                    "is_maintainable": {
                                        "type": "boolean"
                                    },
                                    "is_replaceable": {
                                        "type": "boolean"
                                    },
                                    "show_in_map": {
                                        "type": "boolean"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    },
                                    "auto_workdone_duration": {
                                        "type": "integer"
                                    },
                                    "department": {
                                        "description": "Department { \"id\": N }",
                                        "type": "object"
                                    },
                                    "facility_type": {
                                        "description": "FacilityType { \"id\": N }",
                                        "type": "object"
                                    },
                                    "maintenance_worker": {
                                        "description": "Worker { \"id\": N }",
                                        "type": "object"
                                    },
                                    "storage_worker": {
                                        "description": "Worker { \"id\": N }",
                                        "type": "object"
                                    },
                                    "inspection_schedule": {
                                        "description": "InspectionMasterTemplate { \"id\": N }",
                                        "type": "object"
                                    },
                                    "agrifield": {
                                        "description": "Agrifield { \"id\": N }",
                                        "type": "object"
                                    },
                                    "customer": {
                                        "description": "Customer { \"id\": N }",
                                        "type": "object"
                                    },
                                    "customer_person": {
                                        "description": "CustomerPerson { \"id\": N }",
                                        "type": "object"
                                    },
                                    "accounting_unit_type": {
                                        "description": "AccountingUnitType { \"id\": N }",
                                        "type": "object"
                                    },
                                    "facility_params": {
                                        "description": "{ \"enginehours_rate\": N, \"kilometers_rate\": N }; removed when both are 0",
                                        "type": "object"
                                    },
                                    "import_type": {
                                        "description": "\"file\" from the file import screen",
                                        "type": "string"
                                    },
                                    "customer_persons_name": {
                                        "description": "Contact person name. The customer and contact person are created when none matches. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "customer_persons_email": {
                                        "description": "E-mail of the contact person named in customer_persons_name. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "customer_persons_phone": {
                                        "description": "Phone of the contact person named in customer_persons_name. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "location_name": {
                                        "description": "Name of the location workobject. Matched against existing workobjects and created when missing. Read only when import_type is file.",
                                        "type": "string"
                                    },
                                    "location_address": {
                                        "description": "Address stored on the location workobject. Read only when import_type is file.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Facility (serializer groups owner, facility, classificator, calendarevent, baseattribute, archive, sharing, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Facility3"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    }
                ]
            }
        },
        "/api/facilities/{id}/togglearchive": {
            "put": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Toggle Archive/Un-archive Facility",
                "description": "Toggles Archive/Un-archive Facility. Does not have a request body. The owning company flips the\nfacility's own flag; any other company archives it for itself.",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "put_api_facilities_put_togglearchive",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Facility (serializer groups facility, owner, baseattribute, classificator, archive)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Facility6"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/facilities/data/vehiclelist/{integration_id}": {
            "get": {
                "tags": [
                    "Geoinfo",
                    "Facilities"
                ],
                "summary": "API provider vehicle list",
                "description": "API provider vehicle list. Proxies the integration server's vehicle list and returns its JSON\nresponse unchanged: [] for an integration the company does not have, an empty body when the server cannot be\nreached or answers no JSON.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "get_api_facilities_vehiclelist_api_get_alt",
                "parameters": [
                    {
                        "name": "integration_id",
                        "in": "path",
                        "description": "Integration id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The integration server's answer, or an empty body"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/facilities/integration": {
            "post": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Registers a Facility reported by the integration server",
                "description": "Registers a Facility reported by the integration server and maps it to the provider's id.\nOnly Terake's integration service may call it; any other caller gets {\"success\": \"error\"}.",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "post_api_facilities_integration_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "integration_partner_id": {
                                        "description": "IntegrationPartner reporting the facility",
                                        "type": "integer"
                                    },
                                    "provider_uuid": {
                                        "description": "Identifier of the facility at the provider",
                                        "type": "string"
                                    },
                                    "company_id": {
                                        "description": "Company the facility belongs to",
                                        "type": "integer"
                                    },
                                    "name": {
                                        "description": "Facility name",
                                        "type": "string"
                                    },
                                    "plate": {
                                        "description": "Registration plate",
                                        "type": "string"
                                    },
                                    "vin": {
                                        "description": "Vehicle identification number",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"facility_id\": N}, or {\"success\": \"error\"}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/facilities/log-mapping-event": {
            "post": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Records a facility-mapping event sent by the integration server",
                "description": "Records a facility-mapping event sent by the integration server: each facility of\nupdated_facility_ids without a mapping to provider_uuid gets one. Only Terake's integration service may\ncall it; any other caller gets {\"success\": \"error\"}.",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "post_api_facilities_mapping_event_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "integration_partner_id": {
                                        "description": "IntegrationPartner the mapping event came from",
                                        "type": "integer"
                                    },
                                    "provider_uuid": {
                                        "description": "Identifier of the facility at the provider",
                                        "type": "string"
                                    },
                                    "updated_facility_ids": {
                                        "description": "Facilities touched by the mapping run",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"success\": \"great\"}, or {\"success\": \"error\"}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/facilities/telemetry-log/{id}": {
            "get": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Facility engine hours and kilometers history from telemetry data log",
                "description": "Facility engine hours and kilometers history from telemetry data log. Returns an array of\nobjects with: accounting_date, measuring_time, enginehours, kilometers (one per day and value pair)",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "get_api_facilities_telemetry_log",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "First day as Y-m-d; the first day of the current month by default",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Last day as Y-m-d, included; the end of the current month by default",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of {accounting_date, measuring_time, enginehours, kilometers}"
                    },
                    "404": {
                        "description": "Facility not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/facilities/enginehours-log/{id}": {
            "get": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Facility engine hours and kilometers history from manual entry",
                "description": "Facility engine hours and kilometers history from manual entry. Returns an array of objects\nwith: id, measuring_time, worker_fullname, enginehours, kilometers, worker_id",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "get_api_facilities_enginehours_log",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "First day as Y-m-d; the first day of the current month by default",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Last day as Y-m-d, included; the end of the current month by default",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of {id, measuring_time, enginehours, kilometers, worker_id, worker_fullname}"
                    },
                    "404": {
                        "description": "Facility not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/facilities/data/last-enginehours": {
            "get": {
                "tags": [
                    "Geoinfo",
                    "Facilities"
                ],
                "summary": "Get Facility engine hours",
                "description": "Returns Facility engine hours. Returns an array of objects with: enginehours,\nenginehours_datetime, id, name: every active main facility of the company, with the engine hours of its\nlatest work of the past year that recorded any",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "get_api_facilities_last_enginehours_get",
                "parameters": [
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Department (division): facilities of it, of its direct children, or without a department",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of {id, name, enginehours, enginehours_datetime}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/facilities/{parent_id}/part": {
            "get": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Facility Parts collection",
                "description": "The parts of a facility the caller may see that are not deleted, by name.",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "get_api_facility_parts_get_collection",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "FacilityPart list (serializer groups facility_part, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/FacilityPart"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Facility not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Creates or modifies a Facility Part.",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "post_api_facilities_post_part",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/facilities/{parent_id}/part-with-history": {
            "get": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Facility Parts collection with measurement history",
                "description": "The parts of a facility that are not deleted, by name, each with its lifespan readings.",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "get_api_facility_parts_with_history_get_collection",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "FacilityPart list (serializer groups facility_part, baseattribute, lifespan-log)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/FacilityPart2"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Facility not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/facilities/{parent_id}/part/{id}": {
            "get": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Facility Part by ID",
                "description": "One part of the facility (deleted ones included); an empty body when the facility has no part of that id.",
                "operationId": "get_api_facility_part_get",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility Part id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "FacilityPart (serializer groups facility_part, baseattribute, search)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FacilityPart3"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Facility not found"
                    }
                }
            },
            "put": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Creates or modifies a Facility Part",
                "description": "Changes the facility's part of that id (a body \"id\" does the same on POST); without one a new part is created.\nNeeds the right to modify the facility. Material and inspection tasks must be of the caller's company, a generic\ncompany or a sharing partner.",
                "operationId": "put_api_facilities_put_part",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility Part id (PUT only)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "serial_number": {
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "amount": {
                                        "type": "number"
                                    },
                                    "material": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "replace_inspection_task": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "check_inspection_task": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "FacilityPart (serializer groups facility_part, baseattribute, search); an empty body for another facility's part",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FacilityPart3"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the facility"
                    },
                    "404": {
                        "description": "Facility not found"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Delete Facility Part",
                "description": "Marks the part deleted; needs the right to modify the facility.",
                "operationId": "delete_api_facility_delete_part",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility Part id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "FacilityPart (serializer groups facility_part, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FacilityPart"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the facility"
                    },
                    "404": {
                        "description": "Facility not found"
                    }
                }
            }
        },
        "/api/facilities/{parent_id}/replace/{id}": {
            "get": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Get values for Facility Part replacement",
                "description": "The part with its lifespans, for the replacement form; an empty body when the facility has no part of that id.",
                "operationId": "get_api_facility_part_replace_get",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility Part id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "FacilityPart (serializer groups facility_part_replace, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FacilityPart4"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Facility not found"
                    }
                }
            },
            "put": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Replace Facility Part (Renew lifecycle parameters)",
                "description": "Records the replacement on the caller's inspection case of the facility for today (a new finished one when there\nis none): an item for the part's replace task, a material usage of its material and amount, and the lifespans\nsent (dates for lifespan type 3, at midnight of tz, Europe/Helsinki by default).",
                "operationId": "put_api_facility_part_replace_put",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility Part id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "tz": {
                                        "type": "string"
                                    },
                                    "lifespans": {
                                        "description": "lifespan_type { id }, initial_value, warning_value, end_value",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "FacilityPart (serializer groups facility_part, facility_part_replace, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FacilityPart5"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Facility not found"
                    }
                }
            }
        },
        "/api/facilities/{parent_id}/check/{id}": {
            "put": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Measure Facility Part",
                "description": "Records a check on the caller's inspection case of the facility for today (a new finished one when there is none):\nan item for the part's check task and the readings sent, each judged against its limits.",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "put_api_facility_part_check_put",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility Part id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "lifespans": {
                                        "description": "lifespan_type { id }, current_value; or one such object as the body",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "FacilityPart (serializer groups facility_part, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FacilityPart"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Facility not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/facilities/{parent_id}/part/{id}/measure_history": {
            "get": {
                "tags": [
                    "Facilities"
                ],
                "summary": "Facility Part check history",
                "description": "The readings of the part (at most 500), by lifespan type and inspection item; empty for an unknown or deleted part.",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "get_api_facility_part_measure_history_get",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility Part id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "FacilityPartLifespanLog list (serializer group lifespan-log)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/FacilityPartLifespanLog2"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Facility not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/facilitytypes": {
            "get": {
                "tags": [
                    "Facility types"
                ],
                "externalDocs": {
                    "description": "Help: Types of equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilitytypes/"
                },
                "operationId": "get_api_facilitytypes_list",
                "parameters": [
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "With 1: rows archived by their owner or by the calling company, plus rows deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Unix timestamp: every row changed at or after it, deleted and archived included, for delta sync",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "groups",
                        "in": "query",
                        "description": "Comma-separated subset of the serializer groups this endpoint offers; narrows the response",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilitytypes",
                        "title": "Types of equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilitytypes/",
                            "en": "https://help.terake.com/en/admin/main/facilitytypes/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Facility types"
                ],
                "externalDocs": {
                    "description": "Help: Types of equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilitytypes/"
                },
                "operationId": "post_api_facilitytypes_create",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "required": [
                                    "name"
                                ],
                                "properties": {
                                    "id": {
                                        "description": "Names an existing row to update instead of creating one",
                                        "type": "integer"
                                    },
                                    "uuid": {
                                        "description": "Same, by uuid (clients that create records offline)",
                                        "type": "string"
                                    },
                                    "import_type": {
                                        "description": "With \"file\" (the file import screen) the row to update is matched by outer_id first, then id, then uuid, within the calling company",
                                        "type": "string",
                                        "enum": [
                                            "file"
                                        ]
                                    },
                                    "outer_id": {
                                        "description": "The external identifier a file import matches on; only read with import_type=file",
                                        "type": "string"
                                    },
                                    "name": {
                                        "description": "Facility type name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "inspection_master_template": {
                                        "description": "Inspection template applied to facilities of this type, as {\"id\": N}; null removes it",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": [
                                            "object",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilitytypes",
                        "title": "Types of equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilitytypes/",
                            "en": "https://help.terake.com/en/admin/main/facilitytypes/"
                        }
                    }
                ]
            }
        },
        "/api/facilitytypes/{id}": {
            "get": {
                "tags": [
                    "Facility types"
                ],
                "externalDocs": {
                    "description": "Help: Types of equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilitytypes/"
                },
                "operationId": "get_api_facilitytypes_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilitytypes",
                        "title": "Types of equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilitytypes/",
                            "en": "https://help.terake.com/en/admin/main/facilitytypes/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Facility types"
                ],
                "externalDocs": {
                    "description": "Help: Types of equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilitytypes/"
                },
                "operationId": "put_api_facilitytypes_update",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "properties": {
                                    "name": {
                                        "description": "Facility type name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "inspection_master_template": {
                                        "description": "Inspection template applied to facilities of this type, as {\"id\": N}; null removes it",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": [
                                            "object",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilitytypes",
                        "title": "Types of equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilitytypes/",
                            "en": "https://help.terake.com/en/admin/main/facilitytypes/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Facility types"
                ],
                "externalDocs": {
                    "description": "Help: Types of equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilitytypes/"
                },
                "operationId": "delete_api_facilitytypes_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilitytypes",
                        "title": "Types of equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilitytypes/",
                            "en": "https://help.terake.com/en/admin/main/facilitytypes/"
                        }
                    }
                ]
            }
        },
        "/api/facilitytypes/{id}/togglearchive": {
            "put": {
                "tags": [
                    "Facility types"
                ],
                "externalDocs": {
                    "description": "Help: Types of equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilitytypes/"
                },
                "operationId": "put_api_facilitytypes_togglearchive",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilitytypes",
                        "title": "Types of equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilitytypes/",
                            "en": "https://help.terake.com/en/admin/main/facilitytypes/"
                        }
                    }
                ]
            }
        },
        "/api/faultitems": {
            "get": {
                "tags": [
                    "Faults"
                ],
                "summary": "Faultitem collection",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection\nthe faults with their worker, worktype, faultitem_consumer and maintenance_worker, newest first.\nfrom/to (Y-m-d, default the last 7 days to tomorrow) limit the fault time, open faults always included;\nno date limit when a consumer is named; with from_updated_at every row updated since, archived and\ndeleted ones included. Other filters: worker_id (reporter or maintenance worker), department_ids\n(comma-separated; default the division_id departments), current_page (1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Faults and problems (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/faults/"
                },
                "operationId": "get_api_faultitems_get_collection",
                "parameters": [
                    {
                        "name": "faultitem_consumer_id",
                        "in": "query",
                        "description": "Filter by the faulty item (facility).",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The page of faults"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Faults"
                ],
                "summary": "Create new Faultitem",
                "description": "Registers a fault of the consumer the body names (faultitem_consumer_class facility, agrifield, customer or\nproject, faultitem_consumer.id; 404 without one). A body id or uuid of a fault of the company updates that fault.\nThe consumer's responsible worker gets a repair task, the people concerned a fault message.",
                "externalDocs": {
                    "description": "Help: Faults and problems (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/faults/"
                },
                "operationId": "post_api_faultitems_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "faultitem_consumer_class": {
                                        "type": "string",
                                        "enum": [
                                            "facility",
                                            "agrifield",
                                            "customer",
                                            "project"
                                        ]
                                    },
                                    "faultitem_consumer": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "fault_time": {
                                        "type": "string"
                                    },
                                    "fault_description": {
                                        "type": "string"
                                    },
                                    "severity": {
                                        "type": "integer"
                                    },
                                    "worker": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "worktype": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "maintenance_worker": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "resolved_at_time": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "resolved_description": {
                                        "type": "string"
                                    },
                                    "planned_start_time": {
                                        "type": "string"
                                    },
                                    "planned_stop_time": {
                                        "type": "string"
                                    },
                                    "additional_json": {
                                        "type": "object"
                                    },
                                    "faultitem_pictures": {
                                        "description": "Pictures to relate to the fault item.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "fault_reporting_location": {
                                        "description": "GPS fix the fault was reported at",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Faultitem (serializer groups search, transports, faultitems, planitem, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Faultitem2"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Consumer not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    }
                ]
            }
        },
        "/api/faults/facility": {
            "get": {
                "tags": [
                    "Faults"
                ],
                "summary": "Faultitem collection of facilities",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection\nthe faults with their worker, worktype, faultitem_consumer and maintenance_worker, newest first.\nfrom/to (Y-m-d, default the last 7 days to tomorrow) limit the fault time, open faults always included;\nno date limit when a consumer is named; with from_updated_at every row updated since, archived and\ndeleted ones included. Other filters: worker_id (reporter or maintenance worker), department_ids\n(comma-separated; default the division_id departments), current_page (1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Faults and problems (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/faults/"
                },
                "operationId": "get_api_faults_facility_get",
                "parameters": [
                    {
                        "name": "faultitem_consumer_id",
                        "in": "query",
                        "description": "Filter by the faulty facility.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "facility_id",
                        "in": "query",
                        "description": "Filter by the facility the fault was recorded against.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Alias of facility_id, wins over it.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The page of faults"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    }
                ]
            }
        },
        "/api/faults/facility/{faultitem_consumer_id}": {
            "get": {
                "tags": [
                    "Faults"
                ],
                "summary": "Faultitem collection of one facility",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection\nthe faults with their worker, worktype, faultitem_consumer and maintenance_worker, newest first.\nfrom/to (Y-m-d, default the last 7 days to tomorrow) limit the fault time, open faults always included;\nno date limit when a consumer is named; with from_updated_at every row updated since, archived and\ndeleted ones included. Other filters: worker_id (reporter or maintenance worker), department_ids\n(comma-separated; default the division_id departments), current_page (1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Faults and problems (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/faults/"
                },
                "operationId": "get_api_faults_facility_forone_get",
                "parameters": [
                    {
                        "name": "faultitem_consumer_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The page of faults"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    }
                ]
            }
        },
        "/api/faults/workobject": {
            "get": {
                "tags": [
                    "Faults"
                ],
                "summary": "Faultitem collection of work objects",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection\nthe faults with their worker, worktype, faultitem_consumer and maintenance_worker, newest first.\nfrom/to (Y-m-d, default the last 7 days to tomorrow) limit the fault time, open faults always included;\nno date limit when a consumer is named; with from_updated_at every row updated since, archived and\ndeleted ones included. Other filters: worker_id (reporter or maintenance worker), department_ids\n(comma-separated; default the division_id departments), current_page (1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Faults and problems (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/faults/"
                },
                "operationId": "get_api_faults_workobject_get",
                "parameters": [
                    {
                        "name": "faultitem_consumer_id",
                        "in": "query",
                        "description": "Filter by the faulty work object.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The page of faults"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/faults/workobject/{faultitem_consumer_id}": {
            "get": {
                "tags": [
                    "Faults"
                ],
                "summary": "Faultitem collection of one work object",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection\nthe faults with their worker, worktype, faultitem_consumer and maintenance_worker, newest first.\nfrom/to (Y-m-d, default the last 7 days to tomorrow) limit the fault time, open faults always included;\nno date limit when a consumer is named; with from_updated_at every row updated since, archived and\ndeleted ones included. Other filters: worker_id (reporter or maintenance worker), department_ids\n(comma-separated; default the division_id departments), current_page (1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Faults and problems (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/faults/"
                },
                "operationId": "get_api_faults_workobject_forone_get",
                "parameters": [
                    {
                        "name": "faultitem_consumer_id",
                        "in": "path",
                        "description": "Work object id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The page of faults"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/faultitems/{id}": {
            "get": {
                "tags": [
                    "Faults"
                ],
                "summary": "Faultitem by ID",
                "description": "A fault of the company, or of one of its facilities or work objects.",
                "externalDocs": {
                    "description": "Help: Faults and problems (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/faults/"
                },
                "operationId": "get_api_faultitems_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Faultitem id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Faultitem (serializer groups transports, faultitems, planitem, faultitem, baseattribute, classificator, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Faultitem3"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Faults"
                ],
                "summary": "Modifies a Faultitem",
                "description": "Keys the body carries are written, others left alone; faultitem_consumer_class with faultitem_consumer moves the fault.",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "put_api_faultitems_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Faultitem id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "The fields of POST /api/faultitems",
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Faultitem (serializer groups search, transports, faultitems, planitem, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Faultitem2"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Faults"
                ],
                "summary": "Delete Faultitem by ID",
                "description": "Deletes the fault's tasks (plan items) and repair (inspection case) with it, except tasks that have a work record and what the caller may not modify (GET /api/faultitems/{id}/delete-preview lists them); work records are never deleted. Then marks the fault deleted, detaches it from its work and its consumer, and recomputes the consumer's fault severity. Never refused for related work.",
                "externalDocs": {
                    "description": "Help: Faults and problems (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/faults/"
                },
                "operationId": "delete_api_faultitems_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Faultitem id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Faultitem (serializer groups transports, faultitems, planitem, baseattribute, classificator, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Faultitem4"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    }
                ]
            }
        },
        "/api/faultitems/{id}/delete-preview": {
            "get": {
                "tags": [
                    "Faults"
                ],
                "summary": "What deleting a Faultitem takes with it",
                "description": "One row per object DELETE /api/faultitems/{id} affects, for the confirmation table: the fault's tasks (type plan, the plan items) and repair (type repair, the inspection case), each with its solution: delete, keep_with_work (a task with a work record stays) or keep_without_right (the caller may not modify it); and the related work records (type workdone, solution keep: work records are never deleted).",
                "externalDocs": {
                    "description": "Help: Faults and problems (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/faults/"
                },
                "operationId": "get_api_faultitems_delete_preview",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Faultitem id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "A list of {type: plan|repair|workdone, id, solution: delete|keep_with_work|keep_without_right|keep}, empty when nothing is related to the fault"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldyield/{crop_period_id}": {
            "post": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Saves the harvested yield on the listed Agrifields for the crop period",
                "description": "The yield is marked as entered by hand (not recalculated from the wet yield).",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "post_api_agrifieldyield_post",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "agrifield_id": {
                                        "description": "Comma-separated ids of the fields the yield is written to.",
                                        "type": "string"
                                    },
                                    "real_yield": {
                                        "type": "number"
                                    },
                                    "wet_yield": {
                                        "type": "number"
                                    },
                                    "moisture_wet": {
                                        "type": "number"
                                    },
                                    "moisture_dry": {
                                        "type": "number"
                                    },
                                    "impurity_wet": {
                                        "type": "number"
                                    },
                                    "impurity_dry": {
                                        "type": "number"
                                    },
                                    "crop_layer_type": {
                                        "description": "Crop layer type, as an object with an id field.",
                                        "type": "object"
                                    },
                                    "harvest_type": {
                                        "description": "Harvest type, as an object with an id field.",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "A list of { agrifield_id, agrifield_data_id, planned_yield, real_yield }, one per listed field that has a record for the crop period."
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldplannedyield/{crop_period_id}": {
            "post": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Sets the planned yield on the listed Agrifields for the crop period",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "post_api_agrifield_planned_yield_post",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "agrifield_id": {
                                        "description": "Comma-separated ids of the fields the planned yield is written to.",
                                        "type": "string"
                                    },
                                    "planned_yield": {
                                        "description": "Planned yield in tonnes per hectare.",
                                        "type": "number"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "A list of { agrifield_id, agrifield_data_id, planned_yield, real_yield }, one per listed field that has a record for the crop period."
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/fertilizingplans/save/{agrifield_data_id}": {
            "put": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Saves the fertilizing plan of an Agrifield data record",
                "description": "Keys the body carries are written, others left alone: autumn_seed, planned_yield, manure, manure_amount,\nn_level, p_level, k_level, norm_*, adjustment_of_*, deficit_*, prev_year_*, manure_provided_* (n, p, k), and the\nyield fields of POST /api/agrifieldyield. A changed real_yield becomes a manual one. Answers { save: \"ok\" },\nalso when there is no such record.",
                "operationId": "put_api_fertilizingplans_save_put",
                "parameters": [
                    {
                        "name": "agrifield_data_id",
                        "in": "path",
                        "description": "AgrifieldData id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "crop_type_assigned": {
                                        "description": "CropType id to assign to the crop of the plan.",
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ save: \"ok\" }"
                    }
                }
            }
        },
        "/api/agrifield_data_with_fertilizingplan/{agrifield_data_id}": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "FertilizingPlan by AgrifieldData id",
                "description": "The plan of the record, a default plan (levels 3, everything else 0) when it has none, and an empty body when there is no such record the caller may see.",
                "externalDocs": {
                    "description": "Help: Fieldbook (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldbook/"
                },
                "operationId": "get_api_fertilizingplans_by_agrifield_data_get",
                "parameters": [
                    {
                        "name": "agrifield_data_id",
                        "in": "path",
                        "description": "AgrifieldData id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "AgrifieldFertilizingPlan (serializer groups fieldbook, fertilizing)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldFertilizingPlan"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Saves the fertilizing plan of an Agrifield data record",
                "description": "Keys the body carries are written, others left alone: autumn_seed, planned_yield, manure, manure_amount,\nn_level, p_level, k_level, norm_*, adjustment_of_*, deficit_*, prev_year_*, manure_provided_* (n, p, k), and the\nyield fields of POST /api/agrifieldyield. A changed real_yield becomes a manual one. Answers { save: \"ok\" },\nalso when there is no such record.",
                "externalDocs": {
                    "description": "Help: Fieldbook (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldbook/"
                },
                "operationId": "put_api_fertilizingplans_by_agrifield_data_put",
                "parameters": [
                    {
                        "name": "agrifield_data_id",
                        "in": "path",
                        "description": "AgrifieldData id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "crop_type_assigned": {
                                        "description": "CropType id to assign to the crop of the plan.",
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ save: \"ok\" }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    }
                ]
            }
        },
        "/api/fertilizingplans/usage/{agrifield_id}/{crop_period_ids_csv}": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Fertilizing Usage by Agrifield and Crop Periods",
                "description": "One entry per crop period that has a record or fertilizing data: { agrifield_id, crop_period_id, agrifieldData,\nsum, herdings, workdones, workdone_materials, planitems, planitem_materials, agrifield_works,\nagrifield_work_materials }. An empty list for a field the caller may not see.",
                "externalDocs": {
                    "description": "Help: Fieldbook (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldbook/"
                },
                "operationId": "get_api_fertilizer_usage_by_agrifield",
                "parameters": [
                    {
                        "name": "agrifield_id",
                        "in": "path",
                        "description": "Agrifield id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "crop_period_ids_csv",
                        "in": "path",
                        "description": "Comma-separated CropPeriod ids",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The usage per crop period (serializer groups fertilizingplan, fertilizingdetails)"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    }
                ]
            }
        },
        "/api/fertilizingplans/plan/{agrifield_id}/{crop_period_ids_csv}": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Fertilizing Plan by Agrifield and Crop Periods",
                "description": "One entry per requested crop period: { agrifield_id, crop_period_id, agrifieldData, sum, workdone_materials,\nplanitem_materials, agrifield_work_materials }. An empty list for a field the caller may not see.",
                "operationId": "get_api_fertilizer_plan_by_agrifield",
                "parameters": [
                    {
                        "name": "agrifield_id",
                        "in": "path",
                        "description": "Agrifield id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "crop_period_ids_csv",
                        "in": "path",
                        "description": "Comma-separated CropPeriod ids",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The plan per crop period (serializer groups fertilizingplan, fertilizingdetails)"
                    }
                }
            }
        },
        "/api/crop_type_yield/{crop_type_id}": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Crop Yield options by Crop ID",
                "description": "The distinct harvest_per_hectare values of the crop type's fertilizing need, as a flat list.",
                "externalDocs": {
                    "description": "Help: Fieldbook (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldbook/"
                },
                "operationId": "get_api_crop_type_yield_options_get",
                "parameters": [
                    {
                        "name": "crop_type_id",
                        "in": "path",
                        "description": "CropType id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of harvest levels"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    }
                ]
            }
        },
        "/api/crop_type_yield_need/{crop_type_id}/{harvest_per_hectare}": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Crop Yield Need options by Crop ID",
                "description": "The fertilizing need rows { chemical_code, need_level, ratio_per_hectare } of the crop type at that harvest level, by chemical code and need level.",
                "externalDocs": {
                    "description": "Help: Fieldbook (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldbook/"
                },
                "operationId": "get_api_crop_type_yield_need_options_get",
                "parameters": [
                    {
                        "name": "crop_type_id",
                        "in": "path",
                        "description": "CropType id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "harvest_per_hectare",
                        "in": "path",
                        "description": "Harvest level (tonnes per hectare)",
                        "required": true,
                        "schema": {
                            "type": "number"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of need rows"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    }
                ]
            }
        },
        "/api/generatepdf": {
            "post": {
                "tags": [
                    "FileOutput"
                ],
                "summary": "Renders a report as a PDF",
                "description": "The table the client shows (fields, table_data, total_data) as an A4 landscape PDF; for the lists of signed documents\n(title_slug heading.admin_signed_documents) and of finished works (heading.finished_works) the company's signed documents of\nthose rows are appended.",
                "operationId": "post_api_generatepdf",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "fields": {
                                        "description": "Columns to render, in order ({ name, title })",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "table_data": {
                                        "description": "Rows to render",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "total_data": {
                                        "description": "Summary rows rendered under the table",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "ids": {
                                        "description": "Records shown (finished works: their signed documents are appended)",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "title_slug": {
                                        "description": "Translation slug of the list",
                                        "type": "string"
                                    },
                                    "report_name": {
                                        "description": "Title printed on the report. Defaults to Report",
                                        "type": "string"
                                    },
                                    "language": {
                                        "description": "Two-letter language code. Defaults to en",
                                        "type": "string"
                                    },
                                    "company_name": {
                                        "description": "Company name printed in the header",
                                        "type": "string"
                                    },
                                    "from_date": {
                                        "description": "Start of the reported period, printed in the header",
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "to_date": {
                                        "description": "End of the reported period, printed in the header",
                                        "type": "string",
                                        "format": "date"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ file: <address of the PDF> }"
                    }
                }
            }
        },
        "/api/generateasyncpdf": {
            "post": {
                "tags": [
                    "FileOutput"
                ],
                "summary": "Renders a long report as a PDF using the command line tool",
                "description": "The table of POST /api/generatepdf rendered by wkhtmltopdf, for a report of any length (without signed documents).",
                "operationId": "post_api_generateasyncpdf",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "The fields of POST /api/generatepdf",
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ file: <address of the PDF> }"
                    }
                }
            }
        },
        "/api/generate_roster_pdf": {
            "post": {
                "tags": [
                    "FileOutput"
                ],
                "summary": "Renders a roster as a PDF",
                "description": "The roster timeline the client shows, A4 landscape; weekends between from_date and to_date and the given holidays on a pink background.",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "post_api_generate_roster_pdf",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "table_header": {
                                        "description": "Roster column headers: a title, then the days (Y-m-d)",
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    },
                                    "table_data": {
                                        "description": "Roster rows ({ s, dates: [{ n, s, shift, worktype, period, backgroundColor }] })",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "holidays": {
                                        "description": "Dates (Y-m-d) marked as holidays",
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    },
                                    "report_name": {
                                        "type": "string"
                                    },
                                    "language": {
                                        "type": "string"
                                    },
                                    "company_name": {
                                        "type": "string"
                                    },
                                    "from_date": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "to_date": {
                                        "type": "string",
                                        "format": "date"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ file: <address of the PDF> }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    }
                ]
            }
        },
        "/api/generate_inspection_pdf": {
            "post": {
                "tags": [
                    "FileOutput"
                ],
                "summary": "Renders an inspection case as a PDF",
                "description": "The inspection case the client shows (loadedData), A4 portrait.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "post_api_generate_inspection_pdf",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "loadedData": {
                                        "description": "Inspection case data to render",
                                        "type": "object"
                                    },
                                    "language": {
                                        "description": "Two-letter language code",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ file: <address of the PDF> }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            }
        },
        "/api/generate_qr_codes_pdf": {
            "post": {
                "tags": [
                    "FileOutput"
                ],
                "summary": "Renders QR codes as a printable PDF",
                "description": "Three labels a row, A4 portrait: the QR code and the full name of each row named in ids, among the company's\nrows of the classificator (or the resources of one of its projects for projectworker, projectworktype, projectfacility,\nprojectmaterial and projectmaintenanceunit). A row without a QR image gets one.",
                "operationId": "post_api_generate_qr_codes_pdf",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "classificator": {
                                        "description": "Entity the QR codes are generated for (worker, facility, ...)",
                                        "type": "string"
                                    },
                                    "ids": {
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "project_id": {
                                        "description": "Project, for the project classificators",
                                        "type": "integer"
                                    },
                                    "language": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ file: <address of the PDF> }"
                    }
                }
            }
        },
        "/api/fileoutput": {
            "post": {
                "tags": [
                    "FileOutput"
                ],
                "summary": "Makes new FileOutput",
                "description": "The rows the list address data_url answers with (its collection, else the whole answer), fetched as the caller\nfrom this API's own address, written as xls (xlsx), pdf, json or html with the given columns.",
                "operationId": "post_api_fileoutput_post",
                "parameters": [
                    {
                        "name": "file_type",
                        "in": "query",
                        "description": "Output format: xls (default), pdf, json or html.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "data_url": {
                                        "description": "API address whose response is rendered into the file (only its path and query are used).",
                                        "type": "string"
                                    },
                                    "fields": {
                                        "description": "Columns to output, in order ({ name, title, visible }; a dotted name reads a nested value).",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ file: <address of the file>, data_url, rowcount }"
                    }
                }
            }
        },
        "/api/generate_roster_xls": {
            "post": {
                "tags": [
                    "FileOutput"
                ],
                "summary": "Renders a roster as an Excel file",
                "description": "The roster timeline the client shows as an xlsx sheet; weekends and the given holidays in red on pink.",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "post_api_generate_roster_xls",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "table_header": {
                                        "description": "Roster column headers: a title, then the days (Y-m-d)",
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    },
                                    "table_data": {
                                        "description": "Roster rows ({ s, dates: [{ n, s, shift, worktype, period, backgroundColor }] })",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "holidays": {
                                        "description": "Dates (Y-m-d) marked as holidays",
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ file: <address of the xlsx> }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    }
                ]
            }
        },
        "/api/fieldbookfile/{agrifield_id}": {
            "get": {
                "tags": [
                    "FileOutput"
                ],
                "summary": "Fieldbook workbook",
                "description": "One sheet per field (agrifield_id, or -1 for every field of the company in crop_period_id not hidden from the\nfieldbook): the field's data, its works and materials, the fertilizers' N, P and K, and the fertilizing plan.",
                "externalDocs": {
                    "description": "Help: Fieldbook (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldbook/"
                },
                "operationId": "get_api_fieldbookfile_get",
                "parameters": [
                    {
                        "name": "agrifield_id",
                        "in": "path",
                        "description": "Agrifield id, or -1 for all",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "crop_period_id",
                        "in": "query",
                        "description": "Crop period (the year) of the fields with -1. Defaults to the current year.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "pria_payee_id",
                        "in": "query",
                        "description": "With -1: only the fields of this PRIA payee.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "crop_id",
                        "in": "query",
                        "description": "With -1: only the fields of this crop.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "file_type",
                        "in": "query",
                        "description": "xls (default) or pdf.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "language",
                        "in": "query",
                        "description": "Two-letter language code. Defaults to en.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "periods",
                        "in": "query",
                        "description": "Comma-separated crop years shown. Defaults to 2020 to 2027.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "tabs",
                        "in": "query",
                        "description": "Comma-separated parts shown (1 field, 2 works, 3 materials, 4 NPK, 5 plan). Defaults to 1,2,3,4,5.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ file: <address of the xlsx or PDF> }"
                    },
                    "404": {
                        "description": "The field is not among the workobjects of the company and its partners"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    }
                ]
            }
        },
        "/api/fieldsshapefile": {
            "get": {
                "tags": [
                    "FileOutput"
                ],
                "summary": "Fields as a shapefile",
                "description": "A zip of an ESRI shapefile (shp, shx, dbf, prj, cpg) and John Deere's metadata file. It has held no field for\nyears (see App\\FileOutput\\FieldsShapefile); ids is read by no one.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                },
                "operationId": "get_api_fieldsshapefile_get",
                "responses": {
                    "200": {
                        "description": "{ file: <address of the zip> }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/emailreport": {
            "get": {
                "tags": [
                    "FileOutput"
                ],
                "summary": "Report addressed by a share token",
                "description": "The records of an e-mailed report for its public page: the share token in X-Terake-Api-Key, no worker\ncredential. Returns { title_slug, fields, collection }; { error_slug } with HTTP 200 for an invalid token.",
                "operationId": "get_api_unauthenticated_report_get_collection",
                "responses": {
                    "200": {
                        "description": "{ title_slug, fields, collection }, or { error_slug: alert.incorrect_url | alert.incorrect_report }"
                    }
                }
            }
        },
        "/api/emailcalendar": {
            "get": {
                "tags": [
                    "FileOutput"
                ],
                "summary": "Calendar feed addressed by a share token",
                "description": "The roster items, plan items and holidays an e-mailed calendar names, for its public page: the share token in\nX-Terake-Api-Key. Returns { rosteritems, planitems, holidays }; { error_slug } with HTTP 200 for an invalid token.",
                "operationId": "get_api_unauthenticated_calendar_get_collection",
                "responses": {
                    "200": {
                        "description": "{ rosteritems, planitems, holidays } (serializer groups calendaritem, classificator, owner), or { error_slug }"
                    }
                }
            }
        },
        "/api/signed-document-pdf": {
            "post": {
                "tags": [
                    "FileOutput"
                ],
                "summary": "Renders a signed document as a PDF",
                "description": "For a signed-in worker, or the public report page with its share token in X-Terake-Api-Key. A4 portrait.",
                "externalDocs": {
                    "description": "Help: Signed documents (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/signeddocuments/"
                },
                "operationId": "post_signed_document_pdf",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "content": {
                                        "description": "Document body to render",
                                        "type": "string"
                                    },
                                    "signature_str": {
                                        "description": "Signature image (the SVG the apps store)",
                                        "type": "string"
                                    },
                                    "signer_name": {
                                        "type": "string"
                                    },
                                    "signing_time": {
                                        "description": "Time printed under the signature",
                                        "type": "string"
                                    },
                                    "worker_fullname": {
                                        "type": "string"
                                    },
                                    "report_name": {
                                        "type": "string"
                                    },
                                    "language": {
                                        "type": "string"
                                    },
                                    "company_name": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ file: <address of the PDF> }"
                    },
                    "401": {
                        "description": "Neither a worker credential nor a report share token"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/signeddocuments",
                        "title": "Signed documents",
                        "help": {
                            "et": "https://help.terake.com/et/admin/signeddocuments/",
                            "en": "https://help.terake.com/en/admin/signeddocuments/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    },
                    {
                        "route": "/terake/worktimetable",
                        "title": "Worktime table",
                        "help": {
                            "et": "https://help.terake.com/et/terake/worktimetable/",
                            "en": "https://help.terake.com/en/terake/worktimetable/"
                        }
                    }
                ]
            }
        },
        "/api/image/{uuid}": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "Download or show file",
                "description": "Streams the file itself rather than JSON: /api/image inline, /api/download as an attachment.\nA file whose type a browser could run (HTML, SVG, ...) is always an attachment. 204 when the file is not on disk.",
                "operationId": "get_image_file_download",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The file"
                    },
                    "204": {
                        "description": "The file is not on disk"
                    },
                    "404": {
                        "description": "No file of that uuid the caller may see"
                    }
                }
            }
        },
        "/api/download/{uuid}": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "Download or show file",
                "description": "Streams the file itself rather than JSON: /api/image inline, /api/download as an attachment.\nA file whose type a browser could run (HTML, SVG, ...) is always an attachment. 204 when the file is not on disk.",
                "operationId": "get_file_download",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The file"
                    },
                    "204": {
                        "description": "The file is not on disk"
                    },
                    "404": {
                        "description": "No file of that uuid the caller may see"
                    }
                }
            }
        },
        "/api/publicfile/{uuid}": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "A file of an e-mailed report",
                "description": "The report share token in X-Terake-Api-Key. Streams the file inline (an attachment for a type a browser could run); 204 when the file is not on disk.",
                "operationId": "get_file_access_public",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The file"
                    },
                    "204": {
                        "description": "The file is not on disk"
                    },
                    "403": {
                        "description": "No valid share token"
                    },
                    "404": {
                        "description": "No file of that uuid the report's sender may see"
                    }
                }
            }
        },
        "/api/facilities/{id}/files": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "List all files related with parent object",
                "description": "Lists all files related with parent object. Returns array of Fileitem objects",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "get_api_facilities_get_files",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent whose files are listed, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The live file relations, each with its Fileitem (serializer groups fileitems, baseattribute); for a company its undeleted Fileitems as { fileitem } rows"
                    },
                    "403": {
                        "description": "A plan the caller may not modify, or a company list for a worker who is neither administrator nor staff"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Files"
                ],
                "summary": "Add new file to parent object",
                "description": "Expected content must be formatted either as application/json or multipart/form-data.\nIn case of application/json object properties are 'name' - file name, 'content' - base64 encoded file content, 'mime_type' - mime type, 'device_uuid' - uploading device uuid.\nOnly content is mandatory, others are optional. Returns array of newly created Fileitem objects.",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "post_api_facilities_file_files_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent the file hangs off, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "file": {
                                        "description": "File sent as a multipart upload, when content is not used.",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        },
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "content": {
                                        "description": "File contents as a base64 data URI. Sent instead of a multipart upload.",
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "mime_type": {
                                        "type": "string"
                                    },
                                    "file_extension": {
                                        "type": "string"
                                    },
                                    "device_uuid": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The new file relations, each with its Fileitem (serializer groups fileitems, baseattribute), [{ fileitem }] for a company; { error: message.file_too_big } for a multipart file over the company limit"
                    },
                    "403": {
                        "description": "A plan the caller may not modify"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/workers/{id}/files": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "List all files related with parent object",
                "description": "Lists all files related with parent object. Returns array of Fileitem objects",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "get_api_workers_get_files",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent whose files are listed, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The live file relations, each with its Fileitem (serializer groups fileitems, baseattribute); for a company its undeleted Fileitems as { fileitem } rows"
                    },
                    "403": {
                        "description": "A plan the caller may not modify, or a company list for a worker who is neither administrator nor staff"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Files"
                ],
                "summary": "Add new file to parent object",
                "description": "Expected content must be formatted either as application/json or multipart/form-data.\nIn case of application/json object properties are 'name' - file name, 'content' - base64 encoded file content, 'mime_type' - mime type, 'device_uuid' - uploading device uuid.\nOnly content is mandatory, others are optional. Returns array of newly created Fileitem objects.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "post_api_workers_file_files_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent the file hangs off, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "file": {
                                        "description": "File sent as a multipart upload, when content is not used.",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        },
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "content": {
                                        "description": "File contents as a base64 data URI. Sent instead of a multipart upload.",
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "mime_type": {
                                        "type": "string"
                                    },
                                    "file_extension": {
                                        "type": "string"
                                    },
                                    "device_uuid": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The new file relations, each with its Fileitem (serializer groups fileitems, baseattribute), [{ fileitem }] for a company; { error: message.file_too_big } for a multipart file over the company limit"
                    },
                    "403": {
                        "description": "A plan the caller may not modify"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    }
                ]
            }
        },
        "/api/plans/{id}/files": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "List all files related with parent object",
                "description": "Lists all files related with parent object. Returns array of Fileitem objects",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "get_api_plans_get_files",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent whose files are listed, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The live file relations, each with its Fileitem (serializer groups fileitems, baseattribute); for a company its undeleted Fileitems as { fileitem } rows"
                    },
                    "403": {
                        "description": "A plan the caller may not modify, or a company list for a worker who is neither administrator nor staff"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Files"
                ],
                "summary": "Add new file to parent object",
                "description": "Expected content must be formatted either as application/json or multipart/form-data.\nIn case of application/json object properties are 'name' - file name, 'content' - base64 encoded file content, 'mime_type' - mime type, 'device_uuid' - uploading device uuid.\nOnly content is mandatory, others are optional. Returns array of newly created Fileitem objects.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "post_api_plans_file_upload_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent the file hangs off, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "file": {
                                        "description": "File sent as a multipart upload, when content is not used.",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        },
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "content": {
                                        "description": "File contents as a base64 data URI. Sent instead of a multipart upload.",
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "mime_type": {
                                        "type": "string"
                                    },
                                    "file_extension": {
                                        "type": "string"
                                    },
                                    "device_uuid": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The new file relations, each with its Fileitem (serializer groups fileitems, baseattribute), [{ fileitem }] for a company; { error: message.file_too_big } for a multipart file over the company limit"
                    },
                    "403": {
                        "description": "A plan the caller may not modify"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/faultitems/{id}/files": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "List all files related with parent object",
                "description": "Lists all files related with parent object. Returns array of Fileitem objects",
                "operationId": "get_api_faultitems_get_files",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent whose files are listed, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The live file relations, each with its Fileitem (serializer groups fileitems, baseattribute); for a company its undeleted Fileitems as { fileitem } rows"
                    },
                    "403": {
                        "description": "A plan the caller may not modify, or a company list for a worker who is neither administrator nor staff"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                }
            },
            "post": {
                "tags": [
                    "Files"
                ],
                "summary": "Add new file to parent object",
                "description": "Expected content must be formatted either as application/json or multipart/form-data.\nIn case of application/json object properties are 'name' - file name, 'content' - base64 encoded file content, 'mime_type' - mime type, 'device_uuid' - uploading device uuid.\nOnly content is mandatory, others are optional. Returns array of newly created Fileitem objects.",
                "operationId": "post_api_faultitems_file_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent the file hangs off, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "file": {
                                        "description": "File sent as a multipart upload, when content is not used.",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        },
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "content": {
                                        "description": "File contents as a base64 data URI. Sent instead of a multipart upload.",
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "mime_type": {
                                        "type": "string"
                                    },
                                    "file_extension": {
                                        "type": "string"
                                    },
                                    "device_uuid": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The new file relations, each with its Fileitem (serializer groups fileitems, baseattribute), [{ fileitem }] for a company; { error: message.file_too_big } for a multipart file over the company limit"
                    },
                    "403": {
                        "description": "A plan the caller may not modify"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                }
            }
        },
        "/api/facility_parts/{id}/files": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "List all files related with parent object",
                "description": "Lists all files related with parent object. Returns array of Fileitem objects",
                "operationId": "get_api_facility_parts_get_files",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent whose files are listed, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The live file relations, each with its Fileitem (serializer groups fileitems, baseattribute); for a company its undeleted Fileitems as { fileitem } rows"
                    },
                    "403": {
                        "description": "A plan the caller may not modify, or a company list for a worker who is neither administrator nor staff"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                }
            },
            "post": {
                "tags": [
                    "Files"
                ],
                "summary": "Add new file to parent object",
                "description": "Expected content must be formatted either as application/json or multipart/form-data.\nIn case of application/json object properties are 'name' - file name, 'content' - base64 encoded file content, 'mime_type' - mime type, 'device_uuid' - uploading device uuid.\nOnly content is mandatory, others are optional. Returns array of newly created Fileitem objects.",
                "operationId": "post_api_facility_parts_file_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent the file hangs off, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "file": {
                                        "description": "File sent as a multipart upload, when content is not used.",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        },
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "content": {
                                        "description": "File contents as a base64 data URI. Sent instead of a multipart upload.",
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "mime_type": {
                                        "type": "string"
                                    },
                                    "file_extension": {
                                        "type": "string"
                                    },
                                    "device_uuid": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The new file relations, each with its Fileitem (serializer groups fileitems, baseattribute), [{ fileitem }] for a company; { error: message.file_too_big } for a multipart file over the company limit"
                    },
                    "403": {
                        "description": "A plan the caller may not modify"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                }
            }
        },
        "/api/inspection_case/{id}/files": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "List all files related with parent object",
                "description": "Lists all files related with parent object. Returns array of Fileitem objects",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "get_api_inspection_case_get_files",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent whose files are listed, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The live file relations, each with its Fileitem (serializer groups fileitems, baseattribute); for a company its undeleted Fileitems as { fileitem } rows"
                    },
                    "403": {
                        "description": "A plan the caller may not modify, or a company list for a worker who is neither administrator nor staff"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Files"
                ],
                "summary": "Add new file to parent object",
                "description": "Expected content must be formatted either as application/json or multipart/form-data.\nIn case of application/json object properties are 'name' - file name, 'content' - base64 encoded file content, 'mime_type' - mime type, 'device_uuid' - uploading device uuid.\nOnly content is mandatory, others are optional. Returns array of newly created Fileitem objects.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "post_api_inspection_case_file_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent the file hangs off, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "file": {
                                        "description": "File sent as a multipart upload, when content is not used.",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        },
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "content": {
                                        "description": "File contents as a base64 data URI. Sent instead of a multipart upload.",
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "mime_type": {
                                        "type": "string"
                                    },
                                    "file_extension": {
                                        "type": "string"
                                    },
                                    "device_uuid": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The new file relations, each with its Fileitem (serializer groups fileitems, baseattribute), [{ fileitem }] for a company; { error: message.file_too_big } for a multipart file over the company limit"
                    },
                    "403": {
                        "description": "A plan the caller may not modify"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            }
        },
        "/api/inspection_case_items/{id}/files": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "List all files related with parent object",
                "description": "Lists all files related with parent object. Returns array of Fileitem objects",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "get_api_inspection_case_items_get_files",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent whose files are listed, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The live file relations, each with its Fileitem (serializer groups fileitems, baseattribute); for a company its undeleted Fileitems as { fileitem } rows"
                    },
                    "403": {
                        "description": "A plan the caller may not modify, or a company list for a worker who is neither administrator nor staff"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Files"
                ],
                "summary": "Add new file to parent object",
                "description": "Expected content must be formatted either as application/json or multipart/form-data.\nIn case of application/json object properties are 'name' - file name, 'content' - base64 encoded file content, 'mime_type' - mime type, 'device_uuid' - uploading device uuid.\nOnly content is mandatory, others are optional. Returns array of newly created Fileitem objects.",
                "operationId": "post_api_inspection_case_items_file_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent the file hangs off, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "file": {
                                        "description": "File sent as a multipart upload, when content is not used.",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        },
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "content": {
                                        "description": "File contents as a base64 data URI. Sent instead of a multipart upload.",
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "mime_type": {
                                        "type": "string"
                                    },
                                    "file_extension": {
                                        "type": "string"
                                    },
                                    "device_uuid": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The new file relations, each with its Fileitem (serializer groups fileitems, baseattribute), [{ fileitem }] for a company; { error: message.file_too_big } for a multipart file over the company limit"
                    },
                    "403": {
                        "description": "A plan the caller may not modify"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                }
            }
        },
        "/api/companies/{id}/files": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "List all files related with parent object",
                "description": "Lists all files related with parent object. Returns array of Fileitem objects",
                "operationId": "get_api_companies_get_files",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent whose files are listed, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The live file relations, each with its Fileitem (serializer groups fileitems, baseattribute); for a company its undeleted Fileitems as { fileitem } rows"
                    },
                    "403": {
                        "description": "A plan the caller may not modify, or a company list for a worker who is neither administrator nor staff"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                }
            },
            "post": {
                "tags": [
                    "Files"
                ],
                "summary": "Add new file to parent object",
                "description": "Expected content must be formatted either as application/json or multipart/form-data.\nIn case of application/json object properties are 'name' - file name, 'content' - base64 encoded file content, 'mime_type' - mime type, 'device_uuid' - uploading device uuid.\nOnly content is mandatory, others are optional. Returns array of newly created Fileitem objects.",
                "operationId": "post_api_companies_file_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent the file hangs off, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "file": {
                                        "description": "File sent as a multipart upload, when content is not used.",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        },
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "content": {
                                        "description": "File contents as a base64 data URI. Sent instead of a multipart upload.",
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "mime_type": {
                                        "type": "string"
                                    },
                                    "file_extension": {
                                        "type": "string"
                                    },
                                    "device_uuid": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The new file relations, each with its Fileitem (serializer groups fileitems, baseattribute), [{ fileitem }] for a company; { error: message.file_too_big } for a multipart file over the company limit"
                    },
                    "403": {
                        "description": "A plan the caller may not modify"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                }
            }
        },
        "/api/workobjects/{id}/files": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "List all files related with parent object",
                "description": "Lists all files related with parent object. Returns array of Fileitem objects",
                "operationId": "get_api_workobjects_get_files",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent whose files are listed, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The live file relations, each with its Fileitem (serializer groups fileitems, baseattribute); for a company its undeleted Fileitems as { fileitem } rows"
                    },
                    "403": {
                        "description": "A plan the caller may not modify, or a company list for a worker who is neither administrator nor staff"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                }
            },
            "post": {
                "tags": [
                    "Files"
                ],
                "summary": "Add new file to parent object",
                "description": "Expected content must be formatted either as application/json or multipart/form-data.\nIn case of application/json object properties are 'name' - file name, 'content' - base64 encoded file content, 'mime_type' - mime type, 'device_uuid' - uploading device uuid.\nOnly content is mandatory, others are optional. Returns array of newly created Fileitem objects.",
                "operationId": "post_api_workobjects_file_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent the file hangs off, of the type named in the route: Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "file": {
                                        "description": "File sent as a multipart upload, when content is not used.",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        },
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "content": {
                                        "description": "File contents as a base64 data URI. Sent instead of a multipart upload.",
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "mime_type": {
                                        "type": "string"
                                    },
                                    "file_extension": {
                                        "type": "string"
                                    },
                                    "device_uuid": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The new file relations, each with its Fileitem (serializer groups fileitems, baseattribute), [{ fileitem }] for a company; { error: message.file_too_big } for a multipart file over the company limit"
                    },
                    "403": {
                        "description": "A plan the caller may not modify"
                    },
                    "404": {
                        "description": "Parent not found"
                    }
                }
            }
        },
        "/api/facilities/{id}/files/{uuid}": {
            "delete": {
                "tags": [
                    "Files"
                ],
                "summary": "Delete file",
                "description": "Delete file relation with object. If there's no other relations, deletes also Fileitem.\nDELETE /api/fileitem/{uuid} and /api/companies/{id}/files/{uuid} remove every relation of the file.",
                "operationId": "delete_api_facilities_file_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent (not on /api/fileitem/{uuid})",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Fileitem (serializer groups fileitems, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Fileitem2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the parent"
                    },
                    "404": {
                        "description": "Fileitem or parent not found"
                    }
                }
            }
        },
        "/api/workers/{id}/files/{uuid}": {
            "delete": {
                "tags": [
                    "Files"
                ],
                "summary": "Delete file",
                "description": "Delete file relation with object. If there's no other relations, deletes also Fileitem.\nDELETE /api/fileitem/{uuid} and /api/companies/{id}/files/{uuid} remove every relation of the file.",
                "operationId": "delete_api_workers_file_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent (not on /api/fileitem/{uuid})",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Fileitem (serializer groups fileitems, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Fileitem2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the parent"
                    },
                    "404": {
                        "description": "Fileitem or parent not found"
                    }
                }
            }
        },
        "/api/plans/{id}/files/{uuid}": {
            "delete": {
                "tags": [
                    "Files"
                ],
                "summary": "Delete file",
                "description": "Delete file relation with object. If there's no other relations, deletes also Fileitem.\nDELETE /api/fileitem/{uuid} and /api/companies/{id}/files/{uuid} remove every relation of the file.",
                "operationId": "delete_api_plans_file_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent (not on /api/fileitem/{uuid})",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Fileitem (serializer groups fileitems, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Fileitem2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the parent"
                    },
                    "404": {
                        "description": "Fileitem or parent not found"
                    }
                }
            }
        },
        "/api/faultitems/{id}/files/{uuid}": {
            "delete": {
                "tags": [
                    "Files"
                ],
                "summary": "Delete file",
                "description": "Delete file relation with object. If there's no other relations, deletes also Fileitem.\nDELETE /api/fileitem/{uuid} and /api/companies/{id}/files/{uuid} remove every relation of the file.",
                "operationId": "delete_api_faultitems_file_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent (not on /api/fileitem/{uuid})",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Fileitem (serializer groups fileitems, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Fileitem2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the parent"
                    },
                    "404": {
                        "description": "Fileitem or parent not found"
                    }
                }
            }
        },
        "/api/facility_parts/{id}/files/{uuid}": {
            "delete": {
                "tags": [
                    "Files"
                ],
                "summary": "Delete file",
                "description": "Delete file relation with object. If there's no other relations, deletes also Fileitem.\nDELETE /api/fileitem/{uuid} and /api/companies/{id}/files/{uuid} remove every relation of the file.",
                "operationId": "delete_api_facility_parts_file_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent (not on /api/fileitem/{uuid})",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Fileitem (serializer groups fileitems, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Fileitem2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the parent"
                    },
                    "404": {
                        "description": "Fileitem or parent not found"
                    }
                }
            }
        },
        "/api/inspection_case/{id}/files/{uuid}": {
            "delete": {
                "tags": [
                    "Files"
                ],
                "summary": "Delete file",
                "description": "Delete file relation with object. If there's no other relations, deletes also Fileitem.\nDELETE /api/fileitem/{uuid} and /api/companies/{id}/files/{uuid} remove every relation of the file.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "delete_api_inspection_case_file_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent (not on /api/fileitem/{uuid})",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Fileitem (serializer groups fileitems, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Fileitem2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the parent"
                    },
                    "404": {
                        "description": "Fileitem or parent not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            }
        },
        "/api/inspection_case_items/{id}/files/{uuid}": {
            "delete": {
                "tags": [
                    "Files"
                ],
                "summary": "Delete file",
                "description": "Delete file relation with object. If there's no other relations, deletes also Fileitem.\nDELETE /api/fileitem/{uuid} and /api/companies/{id}/files/{uuid} remove every relation of the file.",
                "operationId": "delete_api_inspection_case_items_file_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent (not on /api/fileitem/{uuid})",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Fileitem (serializer groups fileitems, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Fileitem2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the parent"
                    },
                    "404": {
                        "description": "Fileitem or parent not found"
                    }
                }
            }
        },
        "/api/workobjects/{id}/files/{uuid}": {
            "delete": {
                "tags": [
                    "Files"
                ],
                "summary": "Delete file",
                "description": "Delete file relation with object. If there's no other relations, deletes also Fileitem.\nDELETE /api/fileitem/{uuid} and /api/companies/{id}/files/{uuid} remove every relation of the file.",
                "externalDocs": {
                    "description": "Help: Workobjects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/workobjects/"
                },
                "operationId": "delete_api_workobjects_file_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent (not on /api/fileitem/{uuid})",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Fileitem (serializer groups fileitems, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Fileitem2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the parent"
                    },
                    "404": {
                        "description": "Fileitem or parent not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/companies/{id}/files/{uuid}": {
            "delete": {
                "tags": [
                    "Files"
                ],
                "summary": "Delete file",
                "description": "Delete file relation with object. If there's no other relations, deletes also Fileitem.\nDELETE /api/fileitem/{uuid} and /api/companies/{id}/files/{uuid} remove every relation of the file.",
                "operationId": "delete_api_companies_file_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent (not on /api/fileitem/{uuid})",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Fileitem (serializer groups fileitems, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Fileitem2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the parent"
                    },
                    "404": {
                        "description": "Fileitem or parent not found"
                    }
                }
            }
        },
        "/api/fileitem/{uuid}": {
            "delete": {
                "tags": [
                    "Files"
                ],
                "summary": "Delete file",
                "description": "Delete file relation with object. If there's no other relations, deletes also Fileitem.\nDELETE /api/fileitem/{uuid} and /api/companies/{id}/files/{uuid} remove every relation of the file.",
                "operationId": "delete_api_fileitem_file_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent (not on /api/fileitem/{uuid})",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Fileitem (serializer groups fileitems, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Fileitem2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the parent"
                    },
                    "404": {
                        "description": "Fileitem or parent not found"
                    }
                }
            }
        },
        "/api/flatapi/load-company-data": {
            "get": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Loads the company data set a device needs after logging in",
                "operationId": "get_api_flatapi_load_company_data",
                "parameters": [
                    {
                        "name": "version",
                        "in": "query",
                        "description": "Client build number, recorded against the device.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "post": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Loads the company data set a device needs after logging in",
                "operationId": "post_api_flatapi_load_company_data",
                "parameters": [
                    {
                        "name": "version",
                        "in": "query",
                        "description": "Client build number, recorded against the device.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/flatapi/company-worker-by-device-uuid": {
            "get": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Resolves the company-level worker a device authenticates as",
                "operationId": "get_api_flatapi_company_worker_by_device_uuid",
                "parameters": [
                    {
                        "name": "device_uuid",
                        "in": "query",
                        "description": "Device UUID the company-level worker is resolved for.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company_apikey",
                        "in": "query",
                        "description": "Company-level api key the device authenticates with.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/flatapi/worker-factory-credentials": {
            "post": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Registers a PIN, NFC or RFID credential for a worker",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "post_api_flatapi_worker_factory_credentials",
                "parameters": [
                    {
                        "name": "nfc",
                        "in": "query",
                        "description": "NFC tag identifier to register for the worker.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "rfid",
                        "in": "query",
                        "description": "RFID tag identifier to register for the worker.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "pin",
                        "in": "query",
                        "description": "PIN code to register for the worker.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "username",
                        "in": "query",
                        "description": "Username",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "password",
                        "in": "query",
                        "description": "Password",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/flatapi/upload-fileitem-content/{uuid}": {
            "post": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Upload file",
                "description": "The file comes as base64 in a JSON body (\"content\") or as a multipart upload. Kept as they\nwere: when the company's previous fileitem (id - 1) has the same size, the workdone picture\nof that one is moved to this one (a re-upload under a new uuid); a fileitem uploaded more\nthan twice is marked deleted so that devices stop syncing it; a file that could not be\nstored answers 200 with \"message.file_is_too_big\" and a fake fileitem (id -1).",
                "operationId": "post_api_flatapi_upload_fileitem_content",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "Material uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "version",
                        "in": "query",
                        "description": "Client build number, recorded against the device.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "file",
                        "in": "query",
                        "description": "File sent as a multipart upload, when content is not used.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "binary"
                        }
                    },
                    {
                        "name": "content",
                        "in": "query",
                        "description": "File contents as a base64 data URI.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "name",
                        "in": "query",
                        "description": "File name to store.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/flatapi/login": {
            "post": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Logs a worker in with username and password",
                "operationId": "post_api_flatapi_login",
                "parameters": [
                    {
                        "name": "username",
                        "in": "query",
                        "description": "Username",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "password",
                        "in": "query",
                        "description": "Password",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/flatapi/factory-initial-login": {
            "get": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "First login of a factory-provisioned device, before the worker has credentials",
                "operationId": "get_api_flatapi_factory_initial_login",
                "parameters": [
                    {
                        "name": "username",
                        "in": "query",
                        "description": "Username",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "password",
                        "in": "query",
                        "description": "Password",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "email",
                        "in": "query",
                        "description": "E-mail address used as the username.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "post": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "First login of a factory-provisioned device, before the worker has credentials",
                "operationId": "post_api_flatapi_factory_initial_login",
                "parameters": [
                    {
                        "name": "username",
                        "in": "query",
                        "description": "Username",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "password",
                        "in": "query",
                        "description": "Password",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "email",
                        "in": "query",
                        "description": "E-mail address used as the username.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/flatapi/me": {
            "get": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "The calling worker as the login routes answer it, without the API key",
                "operationId": "get_api_flatapi_me",
                "responses": {
                    "200": {
                        "description": "The worker (serializer groups flatapi and auth), never with its API key"
                    },
                    "401": {
                        "description": "No valid access token or key"
                    }
                }
            }
        },
        "/api/flatapi/credential-login": {
            "get": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Logs a worker in with a PIN, NFC or RFID credential and the company api key",
                "description": "With the key of a company system worker (company_apikey) any active worker of that company\nmay be named; otherwise the caller's own key decides: an administrator names any active\nworker of the company, anyone else only themself. The credential is matched as PIN, then\nRFID, then NFC; a missing credential matches a worker without one (kept as it was).",
                "operationId": "get_api_flatapi_credential_login",
                "parameters": [
                    {
                        "name": "company_apikey",
                        "in": "query",
                        "description": "Company-level api key the device authenticates with.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "credential",
                        "in": "query",
                        "description": "PIN, NFC or RFID credential identifying the worker.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "post": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Logs a worker in with a PIN, NFC or RFID credential and the company api key",
                "description": "With the key of a company system worker (company_apikey) any active worker of that company\nmay be named; otherwise the caller's own key decides: an administrator names any active\nworker of the company, anyone else only themself. The credential is matched as PIN, then\nRFID, then NFC; a missing credential matches a worker without one (kept as it was).",
                "operationId": "post_api_flatapi_credential_login",
                "parameters": [
                    {
                        "name": "company_apikey",
                        "in": "query",
                        "description": "Company-level api key the device authenticates with.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "credential",
                        "in": "query",
                        "description": "PIN, NFC or RFID credential identifying the worker.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/flatapi/mutationrequest": {
            "post": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Create new MutationRequest",
                "description": "The answer is {\"MutationRequest\": [request], <entity name>: [object], ...}. A uuid that was\nalready received answers with the stored request alone and applies nothing again. A body\nwithout target_entity_name is not stored and answered with []. A missing or refused key gets\nthe empty worker object (401 for the Terake app, 200 otherwise), which makes an old client\ndrop the queued mutation; more than 15 refusals a minute for one key get a 429, held back\n10 seconds while a hold slot is free.",
                "operationId": "post_api_flatapi_mutationrequest",
                "parameters": [
                    {
                        "name": "version",
                        "in": "query",
                        "description": "Client build number, recorded against the device.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "target_entity_name",
                        "in": "query",
                        "description": "target entity name, can be one of following: CostAccount | Customer | Device | DeviceLocation | Facility | Faultitem | Fileitem | FolderLayout | FuelFilling | InspectionCase | InspectionCaseItem | JourneyForm | JourneyFormItem | Material | MaterialUsage | MaterialUsageAdding | Notification | Project | Planitem | SignedDocument | SilageTransport | TransportCase | Workdone | WorkerProperties | Workobject | Worktype",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "target_entity_uuid",
                        "in": "query",
                        "description": "Mutating target object UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "request_content",
                        "in": "query",
                        "description": "String containing Mutating object JSON. When creating new object, mandatory parameters are required. When mutating existing object, only modified parameters must be present.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "worker",
                        "in": "query",
                        "description": "Worker Object",
                        "required": true,
                        "schema": {
                            "type": "object"
                        }
                    },
                    {
                        "name": "created_at_timestamp",
                        "in": "query",
                        "description": "Object creation unix timestamp (UTC)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "device_uuid",
                        "in": "query",
                        "description": "Mobile Device (application host device) UUID",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Mutation Request UUID",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/flatapi/objects": {
            "get": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Flat-structured objects for client data access",
                "operationId": "get_api_flatapi_objects",
                "parameters": [
                    {
                        "name": "timestamp",
                        "in": "query",
                        "description": "Records updated from Unix timestamp",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "device_type",
                        "in": "query",
                        "description": "Calling client: 0 workfields, 1 factory.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "include_entities",
                        "in": "query",
                        "description": "Comma-separated entity names to include in the response.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "language",
                        "in": "query",
                        "description": "Two-letter language code for translated labels. Defaults to et.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "ongoing_ids",
                        "in": "query",
                        "description": "Comma-separated ids of records already open on the device.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "simplify_tolerance",
                        "in": "query",
                        "description": "Geometry simplification tolerance in degrees.",
                        "required": false,
                        "schema": {
                            "type": "number",
                            "format": "float"
                        }
                    },
                    {
                        "name": "t",
                        "in": "query",
                        "description": "Per-entity last-update timestamps, sent as t[entity]=timestamp.",
                        "required": false,
                        "style": "deepObject",
                        "explode": true,
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "integer"
                            }
                        }
                    },
                    {
                        "name": "version",
                        "in": "query",
                        "description": "Client build number, recorded against the device.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/v2/flatapi/objects": {
            "get": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Flat-structured objects for client data access, version 2",
                "description": "(Today only Shift, 30 at most, changed since ?timestamp=.)",
                "operationId": "get_api_flatapi_v2_objects",
                "parameters": [
                    {
                        "name": "language",
                        "in": "query",
                        "description": "Query parameter language",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "ongoing_ids",
                        "in": "query",
                        "description": "Query parameter ongoing_ids",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "timestamp",
                        "in": "query",
                        "description": "Query parameter timestamp",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/flatapi/take-todoitem": {
            "get": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Takes a to-do item (Rosteritem or Planitem) for the calling worker",
                "operationId": "get_api_flatapi_take_todoitem",
                "parameters": [
                    {
                        "name": "item_type",
                        "in": "query",
                        "description": "Type of the to-do item being taken.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "item_uuid",
                        "in": "query",
                        "description": "Uuid of the to-do item being taken.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "version",
                        "in": "query",
                        "description": "Client build number, recorded against the device.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "post": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Takes a to-do item (Rosteritem or Planitem) for the calling worker",
                "operationId": "post_api_flatapi_take_todoitem",
                "parameters": [
                    {
                        "name": "item_type",
                        "in": "query",
                        "description": "Type of the to-do item being taken.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "item_uuid",
                        "in": "query",
                        "description": "Uuid of the to-do item being taken.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "version",
                        "in": "query",
                        "description": "Client build number, recorded against the device.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/flatapi/reject-todoitem": {
            "get": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Rejects Rosteritem or Planitem",
                "operationId": "get_api_flatapi_reject_todoitem",
                "parameters": [
                    {
                        "name": "item_type",
                        "in": "query",
                        "description": "Type of the to-do item being rejected.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "item_uuid",
                        "in": "query",
                        "description": "Uuid of the to-do item being rejected.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "version",
                        "in": "query",
                        "description": "Client build number, recorded against the device.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "post": {
                "tags": [
                    "Flatapi"
                ],
                "summary": "Rejects Rosteritem or Planitem",
                "operationId": "post_api_flatapi_reject_todoitem",
                "parameters": [
                    {
                        "name": "item_type",
                        "in": "query",
                        "description": "Type of the to-do item being rejected.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "item_uuid",
                        "in": "query",
                        "description": "Uuid of the to-do item being rejected.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "version",
                        "in": "query",
                        "description": "Client build number, recorded against the device.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/fuelbalances/{query_id}": {
            "get": {
                "tags": [
                    "FuelBalances"
                ],
                "summary": "FuelBalance period",
                "description": "The period of one facility between two dates, as in /api/fuelbalances/main; [] when the id is not \"facility|from|to\".",
                "externalDocs": {
                    "description": "Help: Refueling settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/fuelbalances/"
                },
                "operationId": "get_api_fuelbalances_get",
                "parameters": [
                    {
                        "name": "query_id",
                        "in": "path",
                        "description": "Facility id, start date and end date joined by a pipe, as facility|from|to",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The period, or []"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/fuelbalances",
                        "title": "Refueling settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/fuelbalances/",
                            "en": "https://help.terake.com/en/admin/fuelbalances/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "FuelBalances"
                ],
                "summary": "Save FuelBalance",
                "description": "The balance at the \"to\" date of the path id \"facility|from|to\"; that period is answered.",
                "externalDocs": {
                    "description": "Help: Refueling settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/fuelbalances/"
                },
                "operationId": "put_api_fuelbalances_put",
                "parameters": [
                    {
                        "name": "query_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "facility": {
                                        "description": "{\"id\": ...}, POST only",
                                        "type": "object"
                                    },
                                    "to_time": {
                                        "description": "Date of the reading, POST only, for example 2026-08-28",
                                        "type": "string"
                                    },
                                    "balance_end": {
                                        "description": "Fuel in the tank at that date",
                                        "type": "number"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The period of the facility (an object), or []"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/fuelbalances",
                        "title": "Refueling settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/fuelbalances/",
                            "en": "https://help.terake.com/en/admin/fuelbalances/"
                        }
                    }
                ]
            }
        },
        "/api/fuelbalances": {
            "post": {
                "tags": [
                    "FuelBalances"
                ],
                "summary": "Save FuelBalance",
                "description": "POST: the balance of facility.id at to_time; the period answered is the month before it. PUT: the balance at the \"to\" date of the path id, and that period is answered. The consumption of the period (and of the following one) is calculated.",
                "externalDocs": {
                    "description": "Help: Refueling settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/fuelbalances/"
                },
                "operationId": "post_api_fuelbalances_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "facility": {
                                        "description": "{\"id\": ...}, POST only",
                                        "type": "object"
                                    },
                                    "to_time": {
                                        "description": "Date of the reading, POST only, for example 2026-08-28",
                                        "type": "string"
                                    },
                                    "balance_end": {
                                        "description": "Fuel in the tank at that date",
                                        "type": "number"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The period of the facility (an object), or []"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/fuelbalances",
                        "title": "Refueling settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/fuelbalances/",
                            "en": "https://help.terake.com/en/admin/fuelbalances/"
                        }
                    }
                ]
            }
        },
        "/api/fuelbalances-generate/{company_id}/{date}": {
            "get": {
                "tags": [
                    "FuelBalances"
                ],
                "summary": "Generate FuelBalances",
                "description": "A balance of ?amount= (default 0) at the date for every main facility of the company (neither deleted nor archived) that has none on that date; the caller's own company, any company for a super admin. Answers {company_id, date, amount, facility_count, created, skipped}.",
                "operationId": "get_api_fuelbalances_generate",
                "parameters": [
                    {
                        "name": "company_id",
                        "in": "path",
                        "description": "Company id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "date",
                        "in": "path",
                        "description": "Date as Y-m-d exactly",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "amount",
                        "in": "query",
                        "description": "Balance amount of the created rows, default 0",
                        "required": false,
                        "schema": {
                            "type": "number"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{company_id, date, amount, facility_count, created, skipped}"
                    },
                    "400": {
                        "description": "The date is not Y-m-d"
                    },
                    "403": {
                        "description": "Another company's, and the caller is not a super admin"
                    },
                    "404": {
                        "description": "No such company"
                    }
                }
            }
        },
        "/api/fuels": {
            "get": {
                "tags": [
                    "Fuels"
                ],
                "externalDocs": {
                    "description": "Help: Fuels (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/fuels/"
                },
                "operationId": "get_api_fuels_list",
                "parameters": [
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "With 1: rows archived by their owner or by the calling company, plus rows deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Unix timestamp: every row changed at or after it, deleted and archived included, for delta sync",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "groups",
                        "in": "query",
                        "description": "Comma-separated subset of the serializer groups this endpoint offers; narrows the response",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/fuels",
                        "title": "Fuels",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/fuels/",
                            "en": "https://help.terake.com/en/admin/main/fuels/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Fuels"
                ],
                "externalDocs": {
                    "description": "Help: Fuels (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/fuels/"
                },
                "operationId": "post_api_fuels_create",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "required": [
                                    "name"
                                ],
                                "properties": {
                                    "id": {
                                        "description": "Names an existing row to update instead of creating one",
                                        "type": "integer"
                                    },
                                    "uuid": {
                                        "description": "Same, by uuid (clients that create records offline)",
                                        "type": "string"
                                    },
                                    "import_type": {
                                        "description": "With \"file\" (the file import screen) the row to update is matched by outer_id first, then id, then uuid, within the calling company",
                                        "type": "string",
                                        "enum": [
                                            "file"
                                        ]
                                    },
                                    "outer_id": {
                                        "description": "The external identifier a file import matches on; only read with import_type=file",
                                        "type": "string"
                                    },
                                    "name": {
                                        "description": "Fuel name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/fuels",
                        "title": "Fuels",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/fuels/",
                            "en": "https://help.terake.com/en/admin/main/fuels/"
                        }
                    }
                ]
            }
        },
        "/api/fuels/{id}": {
            "get": {
                "tags": [
                    "Fuels"
                ],
                "externalDocs": {
                    "description": "Help: Fuels (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/fuels/"
                },
                "operationId": "get_api_fuels_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/fuels",
                        "title": "Fuels",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/fuels/",
                            "en": "https://help.terake.com/en/admin/main/fuels/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Fuels"
                ],
                "externalDocs": {
                    "description": "Help: Fuels (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/fuels/"
                },
                "operationId": "put_api_fuels_update",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "properties": {
                                    "name": {
                                        "description": "Fuel name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/fuels",
                        "title": "Fuels",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/fuels/",
                            "en": "https://help.terake.com/en/admin/main/fuels/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Fuels"
                ],
                "externalDocs": {
                    "description": "Help: Fuels (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/fuels/"
                },
                "operationId": "delete_api_fuels_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/fuels",
                        "title": "Fuels",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/fuels/",
                            "en": "https://help.terake.com/en/admin/main/fuels/"
                        }
                    }
                ]
            }
        },
        "/api/fuels/{id}/togglearchive": {
            "put": {
                "tags": [
                    "Fuels"
                ],
                "externalDocs": {
                    "description": "Help: Fuels (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/fuels/"
                },
                "operationId": "put_api_fuels_togglearchive",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/fuels",
                        "title": "Fuels",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/fuels/",
                            "en": "https://help.terake.com/en/admin/main/fuels/"
                        }
                    }
                ]
            }
        },
        "/api/fuelfillings": {
            "get": {
                "tags": [
                    "FuelFillings"
                ],
                "summary": "Fuel fillings list",
                "description": "Fuel fillings (e.g. refuelings) by workers of the company, by filling time. Max 10000 results.\nDefault period is current month.",
                "externalDocs": {
                    "description": "Help: Refuelings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/fuelfillings/"
                },
                "operationId": "get_api_fuelfillings_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted ones included; from and to are ignored)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter records by worker id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter records by facility id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "fuel_id",
                        "in": "query",
                        "description": "Filter records by fuel id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of FuelFilling (serializer groups fuelfilling, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/FuelFilling"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/fuelfillings",
                        "title": "Refuelings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/fuelfillings/",
                            "en": "https://help.terake.com/en/admin/fuelfillings/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "FuelFillings"
                ],
                "summary": "Creates or modifies a FuelFilling",
                "description": "Creates new FuelFilling, or modifies the one the body names by \"id\". A fuel filling Workdone is\ncreated or updated with it, and the facility's engine hours and odometer take its readings when newer.",
                "externalDocs": {
                    "description": "Help: Refuelings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/fuelfillings/"
                },
                "operationId": "post_api_fuelfillings_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "FuelFilling id. Only when modifying an existing record; leave it out to create a new one.",
                                        "type": "integer"
                                    },
                                    "filling_time": {
                                        "description": "Now when empty",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "amount": {
                                        "type": "number"
                                    },
                                    "balance_amount": {
                                        "type": "number"
                                    },
                                    "motohours": {
                                        "type": "number"
                                    },
                                    "kilometers": {
                                        "type": "number"
                                    },
                                    "price_net": {
                                        "type": "number"
                                    },
                                    "price_tax": {
                                        "type": "number"
                                    },
                                    "price_total": {
                                        "type": "number"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "worker": {
                                        "description": "Worker { \"id\": N }",
                                        "type": "object"
                                    },
                                    "fuel": {
                                        "description": "Fuel { \"id\": N }",
                                        "type": "object"
                                    },
                                    "facility": {
                                        "description": "Facility { \"id\": N }",
                                        "type": "object"
                                    },
                                    "identificator": {
                                        "description": "Identificator (fuel card) { \"id\": N }",
                                        "type": "object"
                                    },
                                    "company_id": {
                                        "description": "Company the filling is recorded against. Read only for the integration-server account; ignored for every other caller.",
                                        "type": "integer"
                                    },
                                    "provider_id": {
                                        "description": "IntegrationPartner id of the fuel provider. Read only for the integration-server account; ignored for every other caller.",
                                        "type": "integer"
                                    },
                                    "fuel_card_id": {
                                        "description": "Outer id of the fuel card. A card is created for the company when the id is unknown. Read only for the integration-server account; ignored for every other caller.",
                                        "type": "string"
                                    },
                                    "driver_name": {
                                        "description": "Driver full name, at least 3 characters. The worker is matched on the name and created when missing. Read only for the integration-server account; ignored for every other caller.",
                                        "type": "string"
                                    },
                                    "reg_number": {
                                        "description": "Vehicle registration number, at least 3 characters. The facility is matched on it and created when missing. Read only for the integration-server account; ignored for every other caller.",
                                        "type": "string"
                                    },
                                    "facility_model": {
                                        "description": "Model of a facility created from reg_number. Used to build its name. Read only for the integration-server account; ignored for every other caller.",
                                        "type": "string"
                                    },
                                    "facility_description": {
                                        "description": "Description of a facility created from reg_number. First 20 characters are used to build its name. Read only for the integration-server account; ignored for every other caller.",
                                        "type": "string"
                                    },
                                    "fuel_name": {
                                        "description": "Name of the fuel. Defaults to unknown. Read only for the integration-server account; ignored for every other caller.",
                                        "type": "string"
                                    },
                                    "fuel_outer_id": {
                                        "description": "Outer id of the fuel at the provider. Defaults to a per-company placeholder. Read only for the integration-server account; ignored for every other caller.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The FuelFilling (serializer groups classificator, fuels, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FuelFilling2"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/fuelfillings",
                        "title": "Refuelings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/fuelfillings/",
                            "en": "https://help.terake.com/en/admin/fuelfillings/"
                        }
                    }
                ]
            }
        },
        "/api/fuelfillings/facility/{facility_id}": {
            "get": {
                "tags": [
                    "FuelFillings"
                ],
                "summary": "Fuel fillings recorded against one facility.",
                "description": "Returns Fuelfillings by facility collection: the undeleted fillings of the facility, newest first",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "get_api_fuelfillings_get_by_facility_collection",
                "parameters": [
                    {
                        "name": "facility_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of FuelFilling (serializer group fuelfilling)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/FuelFilling3"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/fuelfillings/{id}": {
            "get": {
                "tags": [
                    "FuelFillings"
                ],
                "summary": "FuelFilling by ID or UUID",
                "description": "Returns FuelFilling by ID or UUID",
                "externalDocs": {
                    "description": "Help: Refuelings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/fuelfillings/"
                },
                "operationId": "get_api_fuelfillings_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "FuelFilling id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The FuelFilling (serializer groups classificator, fuels, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FuelFilling2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The filling's worker is of another company"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/fuelfillings",
                        "title": "Refuelings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/fuelfillings/",
                            "en": "https://help.terake.com/en/admin/fuelfillings/"
                        }
                    },
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "FuelFillings"
                ],
                "summary": "Modify FuelFilling",
                "description": "Modifies the FuelFilling with this id; same body as POST /api/fuelfillings",
                "externalDocs": {
                    "description": "Help: Refuelings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/fuelfillings/"
                },
                "operationId": "put_api_fuelfillings_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "FuelFilling id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The FuelFilling (serializer groups classificator, fuels, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FuelFilling2"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/fuelfillings",
                        "title": "Refuelings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/fuelfillings/",
                            "en": "https://help.terake.com/en/admin/fuelfillings/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "FuelFillings"
                ],
                "summary": "Delete FuelFilling by ID or UUID",
                "description": "Deletes FuelFilling by ID or UUID, and its fuel filling Workdone",
                "externalDocs": {
                    "description": "Help: Refuelings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/fuelfillings/"
                },
                "operationId": "delete_api_fuelfillings_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "FuelFilling id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted FuelFilling (serializer groups classificator, fuels, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FuelFilling2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The filling's worker is of another company"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/fuelfillings",
                        "title": "Refuelings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/fuelfillings/",
                            "en": "https://help.terake.com/en/admin/fuelfillings/"
                        }
                    }
                ]
            }
        },
        "/api/appsettings/{key}": {
            "get": {
                "tags": [
                    "Settings"
                ],
                "summary": "One application setting of the calling worker",
                "description": "Returns the stored setting decoded from JSON; the shape is whatever was saved under the\nkey, [] when nothing was",
                "externalDocs": {
                    "description": "Help: Roster timeline (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/schedule/"
                },
                "operationId": "get_api_appsettings_get",
                "parameters": [
                    {
                        "name": "key",
                        "in": "path",
                        "description": "Setting key the content is stored under",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The stored setting"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Settings"
                ],
                "summary": "Saves one application setting by key",
                "description": "Saves one application setting by key. Returns the stored setting decoded from JSON; the shape\nis whatever was saved under the key. An empty body saves nothing and answers 204; a body that is no JSON object or array is a 400.",
                "externalDocs": {
                    "description": "Help: Faults and problems (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/faults/"
                },
                "operationId": "put_api_settings_put",
                "parameters": [
                    {
                        "name": "key",
                        "in": "path",
                        "description": "Setting key the content is stored under",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "description": "Any JSON object or array; stored as it is",
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The stored setting"
                    },
                    "204": {
                        "description": "Empty body: nothing saved"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/appsettings/visiblefields/{tablename}": {
            "get": {
                "tags": [
                    "Settings"
                ],
                "summary": "Visible columns of an admin UI table",
                "description": "Visible fields name array. Returns the stored column list decoded from JSON; the shape is\nwhatever the admin UI saved for the table, [] when nothing was. A dot in the table name reads as a dash.",
                "externalDocs": {
                    "description": "Help: Projects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/projects/"
                },
                "operationId": "get_api_settings_visiblefields_get",
                "parameters": [
                    {
                        "name": "tablename",
                        "in": "path",
                        "description": "Admin UI table name",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The stored column list"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/projects/",
                            "en": "https://help.terake.com/en/admin/main/projects/"
                        }
                    },
                    {
                        "route": "/plans/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/plans/projects/",
                            "en": "https://help.terake.com/en/plans/projects/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Settings"
                ],
                "summary": "Saves which columns are visible for a table in the admin UI",
                "description": "Saves which columns are visible for a table in the admin UI. Returns the stored column list,\nreduced to name, visible, not_checked (values of hasFilter entries with status 0) and detailSearch (trimmed) per column; rows without a name are dropped.",
                "externalDocs": {
                    "description": "Help: Projects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/projects/"
                },
                "operationId": "put_api_settings_visiblefields_put",
                "parameters": [
                    {
                        "name": "tablename",
                        "in": "path",
                        "description": "Admin UI table name the column list is stored under",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "properties": {
                                        "name": {
                                            "type": "string"
                                        },
                                        "visible": {
                                            "type": "boolean"
                                        },
                                        "hasFilter": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "value": {},
                                                    "status": {
                                                        "description": "0 is unchecked",
                                                        "type": "integer"
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        },
                                        "detailSearch": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The stored column list"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/projects/",
                            "en": "https://help.terake.com/en/admin/main/projects/"
                        }
                    },
                    {
                        "route": "/plans/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/plans/projects/",
                            "en": "https://help.terake.com/en/plans/projects/"
                        }
                    }
                ]
            }
        },
        "/api/general/classificators": {
            "get": {
                "tags": [
                    "Classificators"
                ],
                "summary": "Classificator collections by key",
                "description": "Returns arrays of objects for filling drop-down lists, together with their most crucial relations.\n\nPossible types values are: agrifield, agrifieldonly, workobject, agrifield_group, workobject_category, material, cost_material, product_material, coating_material, workunit, material_category, amount_category, color, cost_account, cost_account_rule, country, currency, customer, provider, facility, maintenance_unit, main_facility, secondary_facility, facility_type, animal_type, company (super admin), company_type, crop, crop_period, crop_period_fullyear, crop_type, department, division, fuel, fuel_card, holiday, identificator_type, inventory_event_type, calendar_event_type, folder_layout, inspection_template, inspection_master_template, integration_partner, location_area, mobile_folder_type, pria_payee, profession, project, role, roster_visibility, roster_type, roster_status, severity, shift, time_tracking_type, worker_group, worktype, worker, project_manager, foreman, maintenance_worker. An unknown type is silently left out of the response.\n\nTypes missing here are found in GET /api/search/{classificator_type}, which is also generally preferred over this endpoint because it works faster.",
                "operationId": "get_api_general_classificators",
                "parameters": [
                    {
                        "name": "types",
                        "in": "query",
                        "description": "Comma delimited classificator keys, see the type list above",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "bookmark",
                        "in": "query",
                        "description": "Unix timestamp bookmark; only records changed after it are returned, deleted and archived ones included.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "editable_id",
                        "in": "query",
                        "description": "Id of the record being edited; its own classificator values stay selectable.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "forworker",
                        "in": "query",
                        "description": "Truthy adds the calling worker's own usage statistics to preferences.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Narrows workers, facilities, work objects, work types and customers to this division and its departments.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "holiday: start of the period (a year before it, from the first day of that year). Today when missing.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "holiday: end of the period (a year after it, to the last day of that year). Today when missing.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The requested classificator collections keyed by type, with bookmark and preferences (serializer groups classificator, owner)"
                    }
                }
            }
        },
        "/api/general/classificator_stats": {
            "get": {
                "tags": [
                    "Classificators"
                ],
                "summary": "Per-classificator record counts for the caller's company",
                "description": "Per-classificator record counts for the caller's company, restricted to the caller's\ndepartments. Returns a count per classificator type. Known types: worker, worktype, main_facility, agrifield, customer, project; any other type (an empty one too) is a 500.",
                "externalDocs": {
                    "description": "Help: Dashboard (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/realtime/dash/"
                },
                "operationId": "get_api_general_classificator_stats",
                "parameters": [
                    {
                        "name": "types",
                        "in": "query",
                        "description": "Comma-separated classificator names to count.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Counts only rows of this division and its departments, and rows without a department (not for worktype).",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Count per requested type, e.g. {\"worker\": 96, \"agrifield\": 797}"
                    },
                    "500": {
                        "description": "A type the endpoint does not count"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    }
                ]
            }
        },
        "/api/general/multiset": {
            "put": {
                "tags": [
                    "Settings"
                ],
                "summary": "Applies a bulk change to the listed records of one entity type",
                "description": "Applies a bulk change to the listed records of one entity type. Returns an empty array.\n\nOnly the keys flagged in \"allowed\" are written, from \"data\": relations as {\"id\": n} (main_facility, secondary_facility, maintenance_unit, worktype, agrifield, customer, cost_account, worker, maintenance_worker, boss, profession, department, facility_type, project, amount_category, material_category, workobject_category, time_tracking_type, roster_visibility), values (hourly_rate, category_name, pause_total_duration, pause_minutes as HH:MM or minutes, start_time_part, stop_time_part), flags (is_deleted, is_archived, is_approved, is_invoiced, is_product, is_material, is_main_facility, is_secondary_facility, is_maintainable, show_in_map, exclude_from_worktime, gps_required, is_background_work, is_maintenance, find_workobject_from_telemetry), department_ids as [{\"id\": n}], and the actions mark_as_done (plans) and generate_pin (workers).\n\nRows the caller may not modify refuse the request with 403 at the first such row; rows before it stay changed.",
                "operationId": "put_api_general_multiset_put",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "entity_name": {
                                        "description": "Entity the bulk operation applies to (Workdone, Planitem, Worker, Facility, ...).",
                                        "type": "string"
                                    },
                                    "ids": {
                                        "description": "Records to change, of the caller's company.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "data": {
                                        "description": "Values to write, keyed by field name.",
                                        "type": "object"
                                    },
                                    "allowed": {
                                        "description": "Per-field flags marking which entries of data may be written.",
                                        "type": "object"
                                    },
                                    "entities": {
                                        "description": "Rosteritem only: records sent inline instead of by id, {\"id\": n, \"roster_type\": {\"is_planitem\": bool}}; a plan item when is_planitem is true.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Always []"
                    },
                    "403": {
                        "description": "A row or a related record the caller may not use"
                    }
                }
            }
        },
        "/api/ping": {
            "get": {
                "tags": [
                    "Settings"
                ],
                "summary": "Network and Backend availability check",
                "description": "Network and Backend availability check, returns 'pong' with server timestamp. Needs no credential.",
                "operationId": "get_api_ping_get",
                "parameters": [
                    {
                        "name": "device_uuid",
                        "in": "query",
                        "description": "Has no effect, just stored to server access log",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "worker_uuid",
                        "in": "query",
                        "description": "Has no effect, just stored to server access log",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "lat",
                        "in": "query",
                        "description": "Has no effect, just stored to server access log",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "lng",
                        "in": "query",
                        "description": "Has no effect, just stored to server access log",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{\"pong\": <unix time>}"
                    }
                },
                "security": []
            }
        },
        "/api/relations/{object_type}/{object_id}": {
            "get": {
                "tags": [
                    "Settings"
                ],
                "summary": "Returns the objects related to one Terake object",
                "description": "Returns the objects related to one Terake object, keyed by type (workobject, worktype, facility_type, main_facility, secondary_facility, maintenance_unit). Pass classificator as a comma-separated list\nto choose which relation types are returned; it defaults to worktype. A facility_type relation also returns the facilities of those types.",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "get_api_relations_get",
                "parameters": [
                    {
                        "name": "object_type",
                        "in": "path",
                        "description": "Terake object type code (worktype, workobject, facility, ...)",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "object_id",
                        "in": "path",
                        "description": "Id of the Terake object, of the type named by object_type",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "classificator",
                        "in": "query",
                        "description": "Comma-separated relation types; worktype when missing",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Related objects keyed by type (serializer group classificator)"
                    },
                    "404": {
                        "description": "Unknown type, or no such undeleted object in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/terake-relations": {
            "put": {
                "tags": [
                    "Settings"
                ],
                "summary": "Replaces the relations between one Terake object and a set of objects of another type",
                "description": "Replaces the relations between one Terake object and a set of objects of another type. Returns\nthe ids of the relations found before the change (relation_ids) and the related ids that were removed (relation_secondobject_ids, an object when keys are left out).",
                "externalDocs": {
                    "description": "Help: Detail view (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/detail/"
                },
                "operationId": "put_api_terake_relations_put",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "first_object_code",
                                    "first_id",
                                    "second_object_code",
                                    "second_ids"
                                ],
                                "properties": {
                                    "first_object_code": {
                                        "description": "Type code of the object the relations belong to",
                                        "type": "string"
                                    },
                                    "first_id": {
                                        "description": "Id of that object",
                                        "type": "integer"
                                    },
                                    "second_object_code": {
                                        "description": "Type code of the related objects",
                                        "type": "string"
                                    },
                                    "second_ids": {
                                        "description": "Related objects. Replaces the whole set",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"relation_ids\": [...], \"relation_secondobject_ids\": [...]}"
                    },
                    "404": {
                        "description": "first_id is 0"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/terake/report",
                        "title": "Report view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/report/",
                            "en": "https://help.terake.com/en/terake/report/"
                        }
                    },
                    {
                        "route": "/terake/worktimetable",
                        "title": "Worktime table",
                        "help": {
                            "et": "https://help.terake.com/et/terake/worktimetable/",
                            "en": "https://help.terake.com/en/terake/worktimetable/"
                        }
                    }
                ]
            }
        },
        "/api/entity/multiaction/{id}": {
            "put": {
                "tags": [
                    "Settings"
                ],
                "summary": "Applies a bulk action to the listed records of one entity type",
                "description": "Toggles the archived flag (action togglearchive) or sets the deleted flag (action delete) of the company's records of one entity type: main_facility, secondary_facility, costaccount, worktype, agrifield, workobject, material or worker. Administrators only. Returns [\"OK\"].",
                "externalDocs": {
                    "description": "Help: Archiving (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/entitystats/"
                },
                "operationId": "put_api_entity_multiaction_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "The one record to change; 0 to change the records listed in ids",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "entityname": {
                                        "description": "Entity the bulk action applies to.",
                                        "type": "string"
                                    },
                                    "ids": {
                                        "description": "Records the action is applied to, when the path id is 0.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "action": {
                                        "description": "togglearchive or delete.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "[\"OK\"]"
                    },
                    "403": {
                        "description": "Not an administrator"
                    },
                    "404": {
                        "description": "A record is not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/entitystats",
                        "title": "Archiving",
                        "help": {
                            "et": "https://help.terake.com/et/admin/entitystats/",
                            "en": "https://help.terake.com/en/admin/entitystats/"
                        }
                    }
                ]
            }
        },
        "/api/entity/utilization": {
            "get": {
                "tags": [
                    "Settings"
                ],
                "summary": "Utilisation summary for an entity type over a number of months",
                "description": "The company's records of one entity type with the number of workdones per month (approved or not) over the last months: { id, name, is_archived, <Y-m>..., total }. Administrators only.",
                "externalDocs": {
                    "description": "Help: Archiving (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/entitystats/"
                },
                "operationId": "get_api_entity_utilization_collection",
                "parameters": [
                    {
                        "name": "entityname",
                        "in": "query",
                        "description": "main_facility, secondary_facility (default), worktype, material, workobject, agrifield, worker or cost_account.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "months",
                        "in": "query",
                        "description": "Number of months to cover, 1 to 12. Defaults to 6.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d; validated but not used.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d; validated but not used.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of { id, name, is_archived, <Y-m>..., total }"
                    },
                    "403": {
                        "description": "Not an administrator"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/entitystats",
                        "title": "Archiving",
                        "help": {
                            "et": "https://help.terake.com/et/admin/entitystats/",
                            "en": "https://help.terake.com/en/admin/entitystats/"
                        }
                    }
                ]
            }
        },
        "/api/geoinfo/cadaster/{num}": {
            "get": {
                "tags": [
                    "Geoinfo"
                ],
                "summary": "Cadastral register information for one cadastre number",
                "description": "Cadastral register information for one cadastre number. Proxies the national cadastral service\nand returns its JSON response unchanged",
                "externalDocs": {
                    "description": "Help: Cadastres (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/cadastres/"
                },
                "operationId": "get_api_geoinfo_cadaster",
                "parameters": [
                    {
                        "name": "num",
                        "in": "path",
                        "description": "Cadastre number, for example 12345:001:0010",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "GeoJSON FeatureCollection of the cadastral unit, or {error}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/cadastres",
                        "title": "Cadastres",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/cadastres/",
                            "en": "https://help.terake.com/en/fieldbook/cadastres/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/location/facilities/last": {
            "get": {
                "tags": [
                    "Geoinfo"
                ],
                "summary": "Last known location of each facility",
                "description": "Last known location of each facility. Returns the last known location row per Facility, as\nreported by the integration server. Rows older than two days, facilities hidden from the map and\nfacilities outside the division_id departments are left out.",
                "externalDocs": {
                    "description": "Help: Dashboard (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/realtime/dash/"
                },
                "operationId": "get_api_location_facilities_last",
                "parameters": [
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Department (division); only facilities of it, of its direct children, or without a department are listed.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Rows of the integration server with t as Y-m-d H:i:s, facility_name, integration_partner_name and position {lat, lng}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    }
                ]
            }
        },
        "/api/location/facilities/params": {
            "get": {
                "tags": [
                    "Geoinfo"
                ],
                "summary": "Latest telemetry parameters of each facility",
                "description": "Latest telemetry parameters of each facility. Returns the telemetry parameter rows per Facility,\nas reported by the integration server",
                "externalDocs": {
                    "description": "Help: Dashboard (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/realtime/dash/"
                },
                "operationId": "get_api_location_facilities_params",
                "responses": {
                    "200": {
                        "description": "List of {id, name, params}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    }
                ]
            }
        },
        "/api/location/facilities/params-for-workdone/{workdone_id}": {
            "get": {
                "tags": [
                    "Geoinfo"
                ],
                "summary": "Facility telemetry parameters recorded during one workdone",
                "description": "Facility telemetry parameters recorded during one workdone. Returns the Facility's historical\ntelemetry rows for the requested period, grouped by parameter name",
                "externalDocs": {
                    "description": "Help: Completed works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workdones/"
                },
                "operationId": "get_api_location_facilities_params_for_workdone",
                "parameters": [
                    {
                        "name": "workdone_id",
                        "in": "path",
                        "description": "Workdone id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Rows per parameter name, each with datetime as d.m.Y H:i:s"
                    },
                    "403": {
                        "description": "The Workdone belongs to another company"
                    },
                    "404": {
                        "description": "Workdone not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    }
                ]
            }
        },
        "/api/location/facilities/history": {
            "get": {
                "tags": [
                    "Geoinfo"
                ],
                "summary": "Location history of a facility over a period",
                "description": "Location history of the Workdone's main facility over the Workdone's period: the Workdone's own\ngeo tracks as workdone_geo_track, or when it has none, the integration server's points as track",
                "externalDocs": {
                    "description": "Help: My work history (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/myworks/"
                },
                "operationId": "get_api_location_facilities_history",
                "parameters": [
                    {
                        "name": "workdone_id",
                        "in": "query",
                        "description": "Workdone ID",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{track: [{lat, lng, t}]} or {workdone_geo_track: [...]}; [] when the Workdone does not exist or has no main facility"
                    },
                    "403": {
                        "description": "The Workdone's main facility belongs to another company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/terake/worktimetable",
                        "title": "Worktime table",
                        "help": {
                            "et": "https://help.terake.com/et/terake/worktimetable/",
                            "en": "https://help.terake.com/en/terake/worktimetable/"
                        }
                    }
                ]
            }
        },
        "/api/geometry/agrifielddata/{id}": {
            "get": {
                "tags": [
                    "Geoinfo"
                ],
                "summary": "Geometry of one agrifield_data record.",
                "description": "Returns Agrifield Data area and simplified area; [] when the workobject belongs to another company.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "get_api_geometry_agrifielddata_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldData id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The AgrifieldData (serializer group geo)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldData2"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Geoinfo"
                ],
                "summary": "Stores the geometry of an Agrifield data record",
                "description": "Stores the geometry of an Agrifield data record, relates the soil samples inside it and brings the workobject up to date with its current crop year.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "put_api_geometry_agrifielddata_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "AgrifieldData id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "geometry": {
                                        "description": "GeoJSON geometry to store for the field data.",
                                        "type": "object"
                                    },
                                    "properties": {
                                        "description": "GeoJSON properties. A size entry is stored as the field size.",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The AgrifieldData (serializer group geo)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldData2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this record"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/geometry/workobject/{id}": {
            "get": {
                "tags": [
                    "Geoinfo"
                ],
                "summary": "Geometry of one workobject.",
                "description": "Returns Workobject location and area: its GeoItem, or {centroid_point: {lat, lng}} when it has\nonly a point; [] for a partner company's workobject.",
                "externalDocs": {
                    "description": "Help: My work history (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/myworks/"
                },
                "operationId": "get_api_geometry_workobject_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Agrifield id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The GeoItem (serializer group geo) or {centroid_point}",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GeoItem"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found among the workobjects of the company and its partners"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/terake/worktimetable",
                        "title": "Worktime table",
                        "help": {
                            "et": "https://help.terake.com/et/terake/worktimetable/",
                            "en": "https://help.terake.com/en/terake/worktimetable/"
                        }
                    }
                ]
            }
        },
        "/api/geometry/workobjects": {
            "get": {
                "tags": [
                    "Geoinfo"
                ],
                "summary": "Workobject geometries for the map.",
                "description": "Workobjects of any category but fields (workobject_category > 1) of the company and of the\npartners sharing theirs, with their simplified geometry, ordered by sorting name.",
                "externalDocs": {
                    "description": "Help: Map view (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/realtime/map/"
                },
                "operationId": "get_api_geometry_workobjects",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp, deleted and archived included",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "Archived records instead of active ones",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Department (division); own workobjects of other departments are left out.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Agrifields (serializer group geo_simple)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Agrifield22"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    }
                ]
            }
        },
        "/api/location/workers/last": {
            "get": {
                "tags": [
                    "Geoinfo"
                ],
                "summary": "Last known location of each worker",
                "description": "Last known location of each worker with ongoing work: the last fix his device sent, with its time.\nA worker whose device has not reported is not listed. A worker without an administrator, observer\nor power user role sees himself, his subordinates and the workers he approves.",
                "externalDocs": {
                    "description": "Help: Dashboard (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/realtime/dash/"
                },
                "operationId": "get_api_location_workers_last",
                "parameters": [
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Department (division); only workers of it, of its direct children, or without a department are listed.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of {worker_id, worker_name, worktype_name, workdone_id, timestamp, datetime, position {lat, lng}}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    }
                ]
            }
        },
        "/api/location/device/workdone/{workdone_id}": {
            "get": {
                "tags": [
                    "Geoinfo"
                ],
                "summary": "Location track recorded during one workdone",
                "description": "Location track recorded during one workdone: the first 100 location points the Workdone's worker\nsent between its start and stop, or { error: Not allowed } when the worker belongs to another\ncompany. [] for a Workdone of another company or one without a worker.",
                "externalDocs": {
                    "description": "Help: My work history (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/myworks/"
                },
                "operationId": "get_api_location_device_workdone",
                "parameters": [
                    {
                        "name": "workdone_id",
                        "in": "path",
                        "description": "Workdone id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "DeviceLocation rows (serializer groups telemetry, geo)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DeviceLocation3"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/terake/worktimetable",
                        "title": "Worktime table",
                        "help": {
                            "et": "https://help.terake.com/et/terake/worktimetable/",
                            "en": "https://help.terake.com/en/terake/worktimetable/"
                        }
                    }
                ]
            }
        },
        "/api/herdings": {
            "get": {
                "tags": [
                    "Herdings"
                ],
                "summary": "Herding collection",
                "description": "Returns Herding collection: the company's herdings overlapping the period, by start date, at most 1000.",
                "externalDocs": {
                    "description": "Help: Herding (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/herding/"
                },
                "operationId": "get_api_herdings_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of Herding (serializer groups default, herdings)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Herding"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/herding",
                        "title": "Herding",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/herding/",
                            "en": "https://help.terake.com/en/fieldbook/herding/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Herdings"
                ],
                "summary": "Create new Herding",
                "description": "Creates a Herding for each field and animal group named, the fields sharing the intensity equally, and their fertilizing caches. A body with an id is refused (404).",
                "externalDocs": {
                    "description": "Help: Herding (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/herding/"
                },
                "operationId": "post_api_herdings_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Must be absent or empty: a body with an id is refused (404).",
                                        "type": "integer"
                                    },
                                    "agrifields": {
                                        "description": "Fields grazed, as objects with an id field. Takes precedence over agrifield.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "agrifield": {
                                        "description": "Single field grazed, as an object with an id field. Used when agrifields does not list it.",
                                        "type": "object"
                                    },
                                    "animals": {
                                        "description": "Animal groups grazed. Each entry carries animal_type and herd_size.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "animal_type": {
                                        "description": "Animal type for a single-group herding, as an object with an id field.",
                                        "type": "object"
                                    },
                                    "herd_size": {
                                        "description": "Number of animals in the group.",
                                        "type": "integer"
                                    },
                                    "start_date": {
                                        "description": "Date grazing starts. Date as Y-m-d, for example 2026-08-28.",
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "end_date": {
                                        "description": "Date grazing ends. Date as Y-m-d, for example 2026-08-28.",
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "hectares_served": {
                                        "description": "Area grazed in hectares.",
                                        "type": "number"
                                    },
                                    "description": {
                                        "description": "Free-text note on the herding.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "List of the Herdings created (serializer groups default, herdings)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Herding"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/herding",
                        "title": "Herding",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/herding/",
                            "en": "https://help.terake.com/en/fieldbook/herding/"
                        }
                    }
                ]
            }
        },
        "/api/herdings/fertilization/{agrifield_id}": {
            "get": {
                "tags": [
                    "Herdings"
                ],
                "summary": "Fertilisation figures derived from herding for one Agrifield",
                "description": "Returns the fertilisation figures derived from herding for one Agrifield of the company or its partners ([] for any other field).",
                "externalDocs": {
                    "description": "Help: Fieldbook (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldbook/"
                },
                "operationId": "get_api_herdings_fertilization_data_get",
                "parameters": [
                    {
                        "name": "agrifield_id",
                        "in": "path",
                        "description": "Agrifield id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of { crop_period_id, field_size, year, timestamp, herding, manure_yearly_total, n_yearly_total, p_yearly_total, manure_total, n_total, p_total, manure_year0, n_year0, p_year0, year0_coef, year1_coef, year0_percent, year1_percent, manure_year1, n_year1, p_year1, manure_total_ha, n_total_ha, p_total_ha, n_year0_ha, p_year0_ha, n_year1_ha, p_year1_ha }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    }
                ]
            }
        },
        "/api/herdings/{id}": {
            "get": {
                "tags": [
                    "Herdings"
                ],
                "summary": "Herding by ID or UUID",
                "description": "Returns Herding by ID or UUID",
                "externalDocs": {
                    "description": "Help: Herding (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/herding/"
                },
                "operationId": "get_api_herdings_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Herding id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Herding (serializer groups default, herdings)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Herding"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/herding",
                        "title": "Herding",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/herding/",
                            "en": "https://help.terake.com/en/fieldbook/herding/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Herdings"
                ],
                "summary": "Modify Herding",
                "description": "Modifies Herding and rebuilds its fertilizing cache. A key the body does not carry is left alone.",
                "externalDocs": {
                    "description": "Help: Herding (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/herding/"
                },
                "operationId": "put_api_herdings_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Herding id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "start_date": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "end_date": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "herd_size": {
                                        "type": "integer"
                                    },
                                    "agrifield": {
                                        "description": "Agrifield { \"id\": N } of the company or its partners",
                                        "type": "object"
                                    },
                                    "animal_type": {
                                        "description": "AnimalType { \"id\": N }",
                                        "type": "object"
                                    },
                                    "year0_percent": {
                                        "type": "integer"
                                    },
                                    "year1_percent": {
                                        "type": "integer"
                                    },
                                    "intensity_percent": {
                                        "type": "integer"
                                    },
                                    "description": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Herding (serializer groups default, herdings)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Herding"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/herding",
                        "title": "Herding",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/herding/",
                            "en": "https://help.terake.com/en/fieldbook/herding/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Herdings"
                ],
                "summary": "Delete Herding by ID or UUID",
                "description": "Deletes Herding by ID or UUID, and removes its fertilizing cache",
                "externalDocs": {
                    "description": "Help: Herding (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/herding/"
                },
                "operationId": "delete_api_herdings_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Herding id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Herding (serializer groups default, herdings)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Herding"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/herding",
                        "title": "Herding",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/herding/",
                            "en": "https://help.terake.com/en/fieldbook/herding/"
                        }
                    }
                ]
            }
        },
        "/api/identificators": {
            "get": {
                "tags": [
                    "Identificators"
                ],
                "summary": "Identificator collection",
                "description": "The company's identificators that are neither deleted nor archived, by name.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "get_api_identificators_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Identificator (serializer groups identificator, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Identificator4"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Identificators"
                ],
                "summary": "Create new Identificator",
                "description": "Creates an identificator of the company; a body \"id\" or \"uuid\" modifies that identificator instead.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "post_api_identificators_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "identificator_type": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "worker": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "facility": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "start_time": {
                                        "type": "string"
                                    },
                                    "stop_time": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "is_deleted": {
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Identificator (serializer groups identificator, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Identificator4"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/identificators/{id}": {
            "get": {
                "tags": [
                    "Identificators"
                ],
                "summary": "Identificator by ID or UUID",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "get_api_identificators_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Identificator id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Identificator (serializer groups identificator, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Identificator4"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Identificators"
                ],
                "summary": "Modifies an Identificator",
                "description": "The body carries the fields of POST and the identificator's id, which must equal the path's. With apply_all_worker_facility the fuel fillings recorded with this card that lack a facility or have an anonymous worker get the card's facility and worker.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "put_api_identificators_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Identificator id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    },
                                    "apply_all_worker_facility": {
                                        "description": "Applies the card's facility and worker to the fuel fillings recorded with it",
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Identificator (serializer groups identificator, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Identificator4"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Identificator"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Identificators"
                ],
                "summary": "Delete Identificator by ID or UUID",
                "description": "Marks the identificator deleted. Returns the deleted Identificator.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "delete_api_identificator_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Identificator id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Identificator (serializer groups identificator, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Identificator4"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Identificator"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/login": {
            "post": {
                "tags": [
                    "Auth"
                ],
                "summary": "Returns the Worker the caller's access token acts as, with roles, company and user.",
                "description": "The web client calls this right after each sign-in, so this is where a key marked with\nPOST /api/my/apikey/renew-at-next-login is replaced. An impersonated sign-in leaves the\nkey alone: it is the impersonated person's key, not the impersonator's.",
                "operationId": "post_api_login",
                "responses": {
                    "200": {
                        "description": "The caller as a Worker (serializer groups auth and auth_user); never carries an API key",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Worker24"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "No valid access token for this API"
                    }
                }
            }
        },
        "/api/generate-token/{token_type}": {
            "get": {
                "tags": [
                    "Auth"
                ],
                "summary": "Issues a one-time token for the caller. Returns the token as a bare string, not JSON.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "get_api_generate_token",
                "parameters": [
                    {
                        "name": "token_type",
                        "in": "path",
                        "description": "OTP (24 hours) or integration (2 hours, for integration.terake.com)",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "OTP",
                                "integration"
                            ]
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The token, as text/plain",
                        "content": {
                            "text/plain": {
                                "schema": {
                                    "type": "string"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-cases/{id}": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "InspectionCase by ID or UUID",
                "description": "A case of the caller's company, with its consumer, template, items, plan items and files.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "get_api_inspection_cases_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Modifies InspectionCase",
                "description": "Keys the body carries are written (description, planned_time, planned_stop_time, supervisor, input_finished,\nenginehours, kilometers); the consumer and the template stay. Taking back input_finished or is_approved withdraws the\napproval; is_approved approves, by approver (default the caller) at validate_time (default now).",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "put_api_inspection_cases_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "is_approved": {
                                        "description": "Approves the case, or withdraws an existing approval when false.",
                                        "type": "boolean"
                                    },
                                    "approver": {
                                        "description": "Worker recorded as the approver. Defaults to the calling worker.",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "validate_time": {
                                        "description": "Time the approval is recorded at (Y-m-d H:i:s). Defaults to now.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Delete InspectionCase by ID or UUID",
                "description": "Marks the case deleted (the right to modify it is checked), detaches it from its work and recomputes the consumer's fault severity.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "delete_api_inspection_cases_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-cases/facility/{id}": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "InspectionCase by ID or UUID",
                "description": "A case of the caller's company, with its consumer, template, items, plan items and files.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "get_api_inspection_cases_facility_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Modifies InspectionCase",
                "description": "Keys the body carries are written (description, planned_time, planned_stop_time, supervisor, input_finished,\nenginehours, kilometers); the consumer and the template stay. Taking back input_finished or is_approved withdraws the\napproval; is_approved approves, by approver (default the caller) at validate_time (default now).",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "put_api_inspection_cases_facility_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "is_approved": {
                                        "description": "Approves the case, or withdraws an existing approval when false.",
                                        "type": "boolean"
                                    },
                                    "approver": {
                                        "description": "Worker recorded as the approver. Defaults to the calling worker.",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "validate_time": {
                                        "description": "Time the approval is recorded at (Y-m-d H:i:s). Defaults to now.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Delete InspectionCase by ID or UUID",
                "description": "Marks the case deleted (the right to modify it is checked), detaches it from its work and recomputes the consumer's fault severity.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "delete_api_inspection_cases_facility_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-cases/workobject/{id}": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "InspectionCase by ID or UUID",
                "description": "A case of the caller's company, with its consumer, template, items, plan items and files.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "get_api_inspection_cases_workobject_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Modifies InspectionCase",
                "description": "Keys the body carries are written (description, planned_time, planned_stop_time, supervisor, input_finished,\nenginehours, kilometers); the consumer and the template stay. Taking back input_finished or is_approved withdraws the\napproval; is_approved approves, by approver (default the caller) at validate_time (default now).",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "put_api_inspection_cases_workobject_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "is_approved": {
                                        "description": "Approves the case, or withdraws an existing approval when false.",
                                        "type": "boolean"
                                    },
                                    "approver": {
                                        "description": "Worker recorded as the approver. Defaults to the calling worker.",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "validate_time": {
                                        "description": "Time the approval is recorded at (Y-m-d H:i:s). Defaults to now.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Delete InspectionCase by ID or UUID",
                "description": "Marks the case deleted (the right to modify it is checked), detaches it from its work and recomputes the consumer's fault severity.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "delete_api_inspection_cases_workobject_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/repair-cases/{id}": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "InspectionCase by ID or UUID",
                "description": "A case of the caller's company, with its consumer, template, items, plan items and files.",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "get_api_repair_cases_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Modifies InspectionCase",
                "description": "Keys the body carries are written (description, planned_time, planned_stop_time, supervisor, input_finished,\nenginehours, kilometers); the consumer and the template stay. Taking back input_finished or is_approved withdraws the\napproval; is_approved approves, by approver (default the caller) at validate_time (default now).",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "put_api_repair_cases_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "is_approved": {
                                        "description": "Approves the case, or withdraws an existing approval when false.",
                                        "type": "boolean"
                                    },
                                    "approver": {
                                        "description": "Worker recorded as the approver. Defaults to the calling worker.",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "validate_time": {
                                        "description": "Time the approval is recorded at (Y-m-d H:i:s). Defaults to now.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Delete InspectionCase by ID or UUID",
                "description": "Marks the case deleted (the right to modify it is checked), detaches it from its work and recomputes the consumer's fault severity.",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "delete_api_repair_cases_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/repair-cases/facility/{id}": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "InspectionCase by ID or UUID",
                "description": "A case of the caller's company, with its consumer, template, items, plan items and files.",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "get_api_repair_cases_facility_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Modifies InspectionCase",
                "description": "Keys the body carries are written (description, planned_time, planned_stop_time, supervisor, input_finished,\nenginehours, kilometers); the consumer and the template stay. Taking back input_finished or is_approved withdraws the\napproval; is_approved approves, by approver (default the caller) at validate_time (default now).",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "put_api_repair_cases_facility_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "is_approved": {
                                        "description": "Approves the case, or withdraws an existing approval when false.",
                                        "type": "boolean"
                                    },
                                    "approver": {
                                        "description": "Worker recorded as the approver. Defaults to the calling worker.",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "validate_time": {
                                        "description": "Time the approval is recorded at (Y-m-d H:i:s). Defaults to now.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Delete InspectionCase by ID or UUID",
                "description": "Marks the case deleted (the right to modify it is checked), detaches it from its work and recomputes the consumer's fault severity.",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "delete_api_repair_cases_facility_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/repair-cases/workobject/{id}": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "InspectionCase by ID or UUID",
                "description": "A case of the caller's company, with its consumer, template, items, plan items and files.",
                "operationId": "get_api_repair_cases_workobject_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                }
            },
            "put": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Modifies InspectionCase",
                "description": "Keys the body carries are written (description, planned_time, planned_stop_time, supervisor, input_finished,\nenginehours, kilometers); the consumer and the template stay. Taking back input_finished or is_approved withdraws the\napproval; is_approved approves, by approver (default the caller) at validate_time (default now).",
                "operationId": "put_api_repair_cases_workobject_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "is_approved": {
                                        "description": "Approves the case, or withdraws an existing approval when false.",
                                        "type": "boolean"
                                    },
                                    "approver": {
                                        "description": "Worker recorded as the approver. Defaults to the calling worker.",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "validate_time": {
                                        "description": "Time the approval is recorded at (Y-m-d H:i:s). Defaults to now.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                }
            },
            "delete": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Delete InspectionCase by ID or UUID",
                "description": "Marks the case deleted (the right to modify it is checked), detaches it from its work and recomputes the consumer's fault severity.",
                "operationId": "delete_api_repair_cases_workobject_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found"
                    }
                }
            }
        },
        "/api/inspections/facility/{id}": {
            "delete": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Delete InspectionCase by ID or UUID",
                "description": "Marks the case deleted (the right to modify it is checked), detaches it from its work and recomputes the consumer's fault severity.",
                "externalDocs": {
                    "description": "Help: Service works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspection/"
                },
                "operationId": "delete_api_inspections_facility_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    }
                ]
            }
        },
        "/api/inspections/workobject/{id}": {
            "delete": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Delete InspectionCase by ID or UUID",
                "description": "Marks the case deleted (the right to modify it is checked), detaches it from its work and recomputes the consumer's fault severity.",
                "externalDocs": {
                    "description": "Help: Service works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspection/"
                },
                "operationId": "delete_api_inspections_workobject_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/repairs/facility/{id}": {
            "delete": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Delete InspectionCase by ID or UUID",
                "description": "Marks the case deleted (the right to modify it is checked), detaches it from its work and recomputes the consumer's fault severity.",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "delete_api_repairs_facility_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/repairs/workobject/{id}": {
            "delete": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Delete InspectionCase by ID or UUID",
                "description": "Marks the case deleted (the right to modify it is checked), detaches it from its work and recomputes the consumer's fault severity.",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "delete_api_repairs_workobject_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted InspectionCase (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase8"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-cases": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "InspectionCase collection",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection the\ncases with their consumer, inspection_template, approver and supervisor, the correct, notcorrect and unhandled item\ncounts, rowclass and repair_status, by planned time. Without a consumer in the path: from/to (Y-m-d, default this\nmonth) limit the planned time, department_ids (comma-separated; default the division_id departments) the consumers.\nWith one: three years back to 101 years ahead, no department limit. from_updated_at: every row updated since,\narchived and deleted ones included, without the period. Other filters: consumer_id, facility_id or\nmain_facility_id (a facility), worker_id (supervisor, approver or the consumer's responsible worker), current_page\n(1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Service works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspection/"
                },
                "operationId": "get_api_inspection_cases_get_collection",
                "responses": {
                    "200": {
                        "description": "The page of inspection cases"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Create new InspectionCase",
                "description": "A case of the consumer the body names (consumer_class facility or agrifield, consumer.id). With inspection_template\n{ inspection_master_template, inspection_type } the template's tasks become its items, with the material usages and\nlifespan checks of the facility's parts; without one it is a repair case. The consumer's responsible worker gets a\nmaintenance task. faultitem.id links a fault of the company (its pictures are copied).",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "post_api_inspection_cases_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "consumer_class": {
                                        "type": "string",
                                        "enum": [
                                            "facility",
                                            "agrifield"
                                        ]
                                    },
                                    "consumer": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "inspection_template": {
                                        "description": "Selects the template by classificator rather than by id.",
                                        "properties": {
                                            "inspection_master_template": {
                                                "type": "integer"
                                            },
                                            "inspection_type": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "faultitem": {
                                        "description": "Fault to link to the case.",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "planned_time": {
                                        "type": "string"
                                    },
                                    "planned_stop_time": {
                                        "type": "string"
                                    },
                                    "supervisor": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "input_finished": {
                                        "type": "boolean"
                                    },
                                    "enginehours": {
                                        "type": "integer"
                                    },
                                    "kilometers": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Consumer or fault not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-cases/facility": {
            "post": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Create new InspectionCase",
                "description": "A case of the consumer the body names (consumer_class facility or agrifield, consumer.id). With inspection_template\n{ inspection_master_template, inspection_type } the template's tasks become its items, with the material usages and\nlifespan checks of the facility's parts; without one it is a repair case. The consumer's responsible worker gets a\nmaintenance task. faultitem.id links a fault of the company (its pictures are copied).",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "post_api_inspection_cases_facility_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "consumer_class": {
                                        "type": "string",
                                        "enum": [
                                            "facility",
                                            "agrifield"
                                        ]
                                    },
                                    "consumer": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "inspection_template": {
                                        "description": "Selects the template by classificator rather than by id.",
                                        "properties": {
                                            "inspection_master_template": {
                                                "type": "integer"
                                            },
                                            "inspection_type": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "faultitem": {
                                        "description": "Fault to link to the case.",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "planned_time": {
                                        "type": "string"
                                    },
                                    "planned_stop_time": {
                                        "type": "string"
                                    },
                                    "supervisor": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "input_finished": {
                                        "type": "boolean"
                                    },
                                    "enginehours": {
                                        "type": "integer"
                                    },
                                    "kilometers": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Consumer or fault not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-cases/workobject": {
            "post": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Create new InspectionCase",
                "description": "A case of the consumer the body names (consumer_class facility or agrifield, consumer.id). With inspection_template\n{ inspection_master_template, inspection_type } the template's tasks become its items, with the material usages and\nlifespan checks of the facility's parts; without one it is a repair case. The consumer's responsible worker gets a\nmaintenance task. faultitem.id links a fault of the company (its pictures are copied).",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "post_api_inspection_cases_workobject_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "consumer_class": {
                                        "type": "string",
                                        "enum": [
                                            "facility",
                                            "agrifield"
                                        ]
                                    },
                                    "consumer": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "inspection_template": {
                                        "description": "Selects the template by classificator rather than by id.",
                                        "properties": {
                                            "inspection_master_template": {
                                                "type": "integer"
                                            },
                                            "inspection_type": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "faultitem": {
                                        "description": "Fault to link to the case.",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "planned_time": {
                                        "type": "string"
                                    },
                                    "planned_stop_time": {
                                        "type": "string"
                                    },
                                    "supervisor": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "input_finished": {
                                        "type": "boolean"
                                    },
                                    "enginehours": {
                                        "type": "integer"
                                    },
                                    "kilometers": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Consumer or fault not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            }
        },
        "/api/repair-cases": {
            "post": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Create new InspectionCase",
                "description": "A case of the consumer the body names (consumer_class facility or agrifield, consumer.id). With inspection_template\n{ inspection_master_template, inspection_type } the template's tasks become its items, with the material usages and\nlifespan checks of the facility's parts; without one it is a repair case. The consumer's responsible worker gets a\nmaintenance task. faultitem.id links a fault of the company (its pictures are copied).",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "post_api_repair_cases_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "consumer_class": {
                                        "type": "string",
                                        "enum": [
                                            "facility",
                                            "agrifield"
                                        ]
                                    },
                                    "consumer": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "inspection_template": {
                                        "description": "Selects the template by classificator rather than by id.",
                                        "properties": {
                                            "inspection_master_template": {
                                                "type": "integer"
                                            },
                                            "inspection_type": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "faultitem": {
                                        "description": "Fault to link to the case.",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "planned_time": {
                                        "type": "string"
                                    },
                                    "planned_stop_time": {
                                        "type": "string"
                                    },
                                    "supervisor": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "input_finished": {
                                        "type": "boolean"
                                    },
                                    "enginehours": {
                                        "type": "integer"
                                    },
                                    "kilometers": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Consumer or fault not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/repair-cases/facility": {
            "post": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Create new InspectionCase",
                "description": "A case of the consumer the body names (consumer_class facility or agrifield, consumer.id). With inspection_template\n{ inspection_master_template, inspection_type } the template's tasks become its items, with the material usages and\nlifespan checks of the facility's parts; without one it is a repair case. The consumer's responsible worker gets a\nmaintenance task. faultitem.id links a fault of the company (its pictures are copied).",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "post_api_repair_cases_facility_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "consumer_class": {
                                        "type": "string",
                                        "enum": [
                                            "facility",
                                            "agrifield"
                                        ]
                                    },
                                    "consumer": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "inspection_template": {
                                        "description": "Selects the template by classificator rather than by id.",
                                        "properties": {
                                            "inspection_master_template": {
                                                "type": "integer"
                                            },
                                            "inspection_type": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "faultitem": {
                                        "description": "Fault to link to the case.",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "planned_time": {
                                        "type": "string"
                                    },
                                    "planned_stop_time": {
                                        "type": "string"
                                    },
                                    "supervisor": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "input_finished": {
                                        "type": "boolean"
                                    },
                                    "enginehours": {
                                        "type": "integer"
                                    },
                                    "kilometers": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Consumer or fault not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/repair-cases/workobject": {
            "post": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Create new InspectionCase",
                "description": "A case of the consumer the body names (consumer_class facility or agrifield, consumer.id). With inspection_template\n{ inspection_master_template, inspection_type } the template's tasks become its items, with the material usages and\nlifespan checks of the facility's parts; without one it is a repair case. The consumer's responsible worker gets a\nmaintenance task. faultitem.id links a fault of the company (its pictures are copied).",
                "operationId": "post_api_repair_cases_workobject_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "consumer_class": {
                                        "type": "string",
                                        "enum": [
                                            "facility",
                                            "agrifield"
                                        ]
                                    },
                                    "consumer": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "inspection_template": {
                                        "description": "Selects the template by classificator rather than by id.",
                                        "properties": {
                                            "inspection_master_template": {
                                                "type": "integer"
                                            },
                                            "inspection_type": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "faultitem": {
                                        "description": "Fault to link to the case.",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "planned_time": {
                                        "type": "string"
                                    },
                                    "planned_stop_time": {
                                        "type": "string"
                                    },
                                    "supervisor": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "input_finished": {
                                        "type": "boolean"
                                    },
                                    "enginehours": {
                                        "type": "integer"
                                    },
                                    "kilometers": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Consumer or fault not found"
                    }
                }
            }
        },
        "/api/inspection-cases/{id}/items": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Items of one inspection case",
                "description": "Returns { input_finished_at_timestamp, approved_at_timestamp, facility, inspection_case_items }: the items that are neither deleted nor archived, in the order of their tasks.",
                "operationId": "get_api_inspection_case_items_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The items (serializer group inspection-case-items)"
                    },
                    "404": {
                        "description": "Not found"
                    }
                }
            }
        },
        "/api/inspection-cases/{id}/materials": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Materials replaced by an inspection case",
                "description": "Per material {id, name, slug, costPerUnit, \"1\" (the amount), total_cost}: the facility parts the case's tasks replace, summed by material.",
                "operationId": "get_api_inspection_case_materials_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of materials with amount and cost"
                    },
                    "404": {
                        "description": "Not found"
                    }
                }
            }
        },
        "/api/inspection-cases/{id}/plan-follow-up": {
            "put": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Plan follow-up Repair case for not done tasks in InspectionCase",
                "description": "A new repair case of the same consumer and supervisor with a copy of every item that was not in order (its lifespan checks, material usages and files) and of the case's files.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "put_api_inspection_cases_plan_follow_up_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "planned_time": {
                                        "description": "Planned start of the follow-up repair (Y-m-d H:i:s).",
                                        "type": "string"
                                    },
                                    "planned_stop_time": {
                                        "description": "Planned end; the case ends at midnight after it (default after planned_time).",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The new InspectionCase (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-cases/{id}/set-approved": {
            "put": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Set InspectionCase approved",
                "description": "Approved by the caller now; a facility's severity is recalculated. No request body.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "put_api_inspection_cases_set_approved_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups default, inspections)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase9"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-cases/{id}/set-input-finished": {
            "put": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Marks the inspection case input as finished",
                "description": "Input finished now; the linked fault is resolved now. No request body.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "put_api_inspection_cases_set_input_finished_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionCase (serializer groups default, inspections)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCase9"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-cases/{inspection_case_id}/item/{item_id}": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Get InspectionCaseItem",
                "description": "An item of a case of the caller's company; an empty body when there is none.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "get_api_inspection_case_item_get",
                "parameters": [
                    {
                        "name": "inspection_case_id",
                        "in": "path",
                        "description": "InspectionCase id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "item_id",
                        "in": "path",
                        "description": "InspectionCase item id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionCaseItem (serializer groups inspections, inspection-case-items, inspection-case-item-put)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCaseItem6"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Modifies an InspectionCase item",
                "description": "Records the item as handled: description (cut to 995 characters and an ellipsis beyond 1000), is_in_order,\nworker (default the caller), validate_time (default now); material_usages[].facility_part replaces those parts of the\ncase's facility (new lifespans), lifespan_logs[] records their readings. The case's input is finished once every\nitem is handled (status 4 with a finding, 5 without, and its fault resolved), otherwise it is in progress.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "put_api_inspection_case_item_put",
                "parameters": [
                    {
                        "name": "inspection_case_id",
                        "in": "path",
                        "description": "InspectionCase id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "item_id",
                        "in": "path",
                        "description": "InspectionCase item id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "description": {
                                        "type": "string"
                                    },
                                    "is_in_order": {
                                        "type": "boolean"
                                    },
                                    "worker": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "validate_time": {
                                        "description": "Y-m-d H:i:s",
                                        "type": "string"
                                    },
                                    "material_usages": {
                                        "description": "Materials consumed; facility_part { id, tz, lifespans[] } replaces the part.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "lifespan_logs": {
                                        "description": "Readings: facility_part { id }, lifespan_type { id }, current_value (or lifespans[]).",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCaseItem (serializer groups inspection-case-items, inspection-case-item-put)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCaseItem7"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-cases/{inspection_case_id}/item/{item_id}/material_usage/{material_usage_id}": {
            "put": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Creates or modifies the material usage of an InspectionCase item",
                "description": "The usage of that id on the item (a new one without an id, or with an unknown one) takes the material and the amount.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "put_api_inspection_case_item_material_usage_put",
                "parameters": [
                    {
                        "name": "inspection_case_id",
                        "in": "path",
                        "description": "InspectionCase id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "item_id",
                        "in": "path",
                        "description": "InspectionCase item id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "material_usage_id",
                        "in": "path",
                        "description": "MaterialUsage id (the second path leaves it out to create one)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "material": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "amount": {
                                        "type": "number"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCaseItem (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCaseItem3"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Delete InspectionCase Item Material Usage",
                "description": "Removes the usage of that id from the item; returns the item (an empty body when there is none).",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "delete_api_inspection_case_item_material_usage_delete",
                "parameters": [
                    {
                        "name": "inspection_case_id",
                        "in": "path",
                        "description": "InspectionCase id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "item_id",
                        "in": "path",
                        "description": "InspectionCase item id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "material_usage_id",
                        "in": "path",
                        "description": "MaterialUsage id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionCaseItem (serializer groups inspection-case-items, inspection-case-item-put)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCaseItem7"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-cases/{inspection_case_id}/item/{item_id}/material_usage": {
            "put": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Creates or modifies the material usage of an InspectionCase item",
                "description": "The usage of that id on the item (a new one without an id, or with an unknown one) takes the material and the amount.",
                "operationId": "put_api_inspection_case_item_material_usage_new_put",
                "parameters": [
                    {
                        "name": "inspection_case_id",
                        "in": "path",
                        "description": "InspectionCase id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "item_id",
                        "in": "path",
                        "description": "InspectionCase item id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "material_usage_id",
                        "in": "path",
                        "description": "MaterialUsage id (the second path leaves it out to create one)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "material": {
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    "amount": {
                                        "type": "number"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCaseItem (serializer groups search, inspections, planitem, inspection-case-items, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCaseItem3"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/inspection-cases/{inspection_case_id}/inspection-task/{id}": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Returns one InspectionTask by id or uuid",
                "description": "A task of the caller's company; the case in the path is not read.",
                "operationId": "get_api_inspection_case_task_get",
                "parameters": [
                    {
                        "name": "inspection_case_id",
                        "in": "path",
                        "description": "InspectionCase id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionTask id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionTask (serializer group inspection_task)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionTask5"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found"
                    }
                }
            }
        },
        "/api/inspection-cases/{inspection_case_id}/inspection-task": {
            "post": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Adds a task to an InspectionCase (without InspectionTemplate)",
                "description": "A new task of the company (last in order) with short_desc, long_desc, action_desc and outer_id, and the case's\nitem for it. The PUT path names an existing task: its texts are written unless it belongs to a master template, and\nthe item is created when the case has none for it.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "post_api_inspection_cases_task_post",
                "parameters": [
                    {
                        "name": "inspection_case_id",
                        "in": "path",
                        "description": "InspectionCase id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "short_desc": {
                                        "description": "At most 100 characters.",
                                        "type": "string"
                                    },
                                    "long_desc": {
                                        "description": "At most 400 characters.",
                                        "type": "string"
                                    },
                                    "action_desc": {
                                        "description": "At most 400 characters.",
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "description": "At most 32 characters.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionCaseItem (serializer groups search, inspections, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionCaseItem4"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Case or task not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-cases/{inspection_case_id}/inspection-task/{inspection_task_id}": {
            "put": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Creates or modifies an inspection task on an InspectionCase.",
                "operationId": "put_api_inspection_cases_task_put",
                "parameters": [
                    {
                        "name": "inspection_case_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "inspection_task_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "delete": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Deletes an unhandled InspectionCase item",
                "description": "Removed permanently with its material usages (and its task, unless the task belongs to a master template), so the\nrow does not reach the recycle bin or a from_updated_at sync. A handled item stays. Returns { id, is_deleted: true },\nid 0 when nothing was removed.",
                "operationId": "delete_api_inspection_case_task_delete",
                "parameters": [
                    {
                        "name": "inspection_case_item_id",
                        "in": "path",
                        "description": "InspectionCaseItem id (first path)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "inspection_case_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "inspection_task_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ id, is_deleted: true }"
                    },
                    "404": {
                        "description": "Item, case or task not found"
                    }
                }
            }
        },
        "/api/inspection_case_items/{inspection_case_item_id}": {
            "delete": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Deletes an unhandled InspectionCase item",
                "description": "Removed permanently with its material usages (and its task, unless the task belongs to a master template), so the\nrow does not reach the recycle bin or a from_updated_at sync. A handled item stays. Returns { id, is_deleted: true },\nid 0 when nothing was removed.",
                "externalDocs": {
                    "description": "Help: Carrying out maintenance (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                },
                "operationId": "delete_api_inspection_case_items_delete",
                "parameters": [
                    {
                        "name": "inspection_case_item_id",
                        "in": "path",
                        "description": "InspectionCaseItem id (first path)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ id, is_deleted: true }"
                    },
                    "404": {
                        "description": "Item, case or task not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    },
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/inspections": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "InspectionCase collection",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection the\ncases with their consumer, inspection_template, approver and supervisor, the correct, notcorrect and unhandled item\ncounts, rowclass and repair_status, by planned time. Without a consumer in the path: from/to (Y-m-d, default this\nmonth) limit the planned time, department_ids (comma-separated; default the division_id departments) the consumers.\nWith one: three years back to 101 years ahead, no department limit. from_updated_at: every row updated since,\narchived and deleted ones included, without the period. Other filters: consumer_id, facility_id or\nmain_facility_id (a facility), worker_id (supervisor, approver or the consumer's responsible worker), current_page\n(1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Service works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspection/"
                },
                "operationId": "get_api_inspections_get_collection",
                "responses": {
                    "200": {
                        "description": "The page of inspection cases"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/inspections/workobject": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "InspectionCase collection",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection the\ncases with their consumer, inspection_template, approver and supervisor, the correct, notcorrect and unhandled item\ncounts, rowclass and repair_status, by planned time. Without a consumer in the path: from/to (Y-m-d, default this\nmonth) limit the planned time, department_ids (comma-separated; default the division_id departments) the consumers.\nWith one: three years back to 101 years ahead, no department limit. from_updated_at: every row updated since,\narchived and deleted ones included, without the period. Other filters: consumer_id, facility_id or\nmain_facility_id (a facility), worker_id (supervisor, approver or the consumer's responsible worker), current_page\n(1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Service works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspection/"
                },
                "operationId": "get_api_inspections_workobject_get",
                "responses": {
                    "200": {
                        "description": "The page of inspection cases"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/inspections/facility": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "InspectionCase collection of facilities",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection the\ncases with their consumer, inspection_template, approver and supervisor, the correct, notcorrect and unhandled item\ncounts, rowclass and repair_status, by planned time. Without a consumer in the path: from/to (Y-m-d, default this\nmonth) limit the planned time, department_ids (comma-separated; default the division_id departments) the consumers.\nWith one: three years back to 101 years ahead, no department limit. from_updated_at: every row updated since,\narchived and deleted ones included, without the period. Other filters: consumer_id, facility_id or\nmain_facility_id (a facility), worker_id (supervisor, approver or the consumer's responsible worker), current_page\n(1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Service works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspection/"
                },
                "operationId": "get_api_inspections_facility_get",
                "responses": {
                    "200": {
                        "description": "The page of inspection cases"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    }
                ]
            }
        },
        "/api/inspections/facility/{consumer_id}": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "InspectionCase collection of one facility",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection the\ncases with their consumer, inspection_template, approver and supervisor, the correct, notcorrect and unhandled item\ncounts, rowclass and repair_status, by planned time. Without a consumer in the path: from/to (Y-m-d, default this\nmonth) limit the planned time, department_ids (comma-separated; default the division_id departments) the consumers.\nWith one: three years back to 101 years ahead, no department limit. from_updated_at: every row updated since,\narchived and deleted ones included, without the period. Other filters: consumer_id, facility_id or\nmain_facility_id (a facility), worker_id (supervisor, approver or the consumer's responsible worker), current_page\n(1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Service works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspection/"
                },
                "operationId": "get_api_inspections_facility_forone_get",
                "parameters": [
                    {
                        "name": "consumer_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The page of inspection cases"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    }
                ]
            }
        },
        "/api/inspections/workobject/{consumer_id}": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "InspectionCase collection of one work object",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection the\ncases with their consumer, inspection_template, approver and supervisor, the correct, notcorrect and unhandled item\ncounts, rowclass and repair_status, by planned time. Without a consumer in the path: from/to (Y-m-d, default this\nmonth) limit the planned time, department_ids (comma-separated; default the division_id departments) the consumers.\nWith one: three years back to 101 years ahead, no department limit. from_updated_at: every row updated since,\narchived and deleted ones included, without the period. Other filters: consumer_id, facility_id or\nmain_facility_id (a facility), worker_id (supervisor, approver or the consumer's responsible worker), current_page\n(1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Service works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspection/"
                },
                "operationId": "get_api_inspections_workobject_forone_get",
                "parameters": [
                    {
                        "name": "consumer_id",
                        "in": "path",
                        "description": "Work object id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The page of inspection cases"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspection",
                        "title": "Service works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspection/",
                            "en": "https://help.terake.com/en/vehiclebook/inspection/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/repairs": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Repair case collection",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection the\ncases with their consumer, inspection_template, approver and supervisor, the correct, notcorrect and unhandled item\ncounts, rowclass and repair_status, by planned time. Without a consumer in the path: from/to (Y-m-d, default this\nmonth) limit the planned time, department_ids (comma-separated; default the division_id departments) the consumers.\nWith one: three years back to 101 years ahead, no department limit. from_updated_at: every row updated since,\narchived and deleted ones included, without the period. Other filters: consumer_id, facility_id or\nmain_facility_id (a facility), worker_id (supervisor, approver or the consumer's responsible worker), current_page\n(1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "get_api_repairs_get_collection",
                "responses": {
                    "200": {
                        "description": "The page of repair cases"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/repairs/workobject": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Repair case collection",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection the\ncases with their consumer, inspection_template, approver and supervisor, the correct, notcorrect and unhandled item\ncounts, rowclass and repair_status, by planned time. Without a consumer in the path: from/to (Y-m-d, default this\nmonth) limit the planned time, department_ids (comma-separated; default the division_id departments) the consumers.\nWith one: three years back to 101 years ahead, no department limit. from_updated_at: every row updated since,\narchived and deleted ones included, without the period. Other filters: consumer_id, facility_id or\nmain_facility_id (a facility), worker_id (supervisor, approver or the consumer's responsible worker), current_page\n(1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "get_api_repairs_workobject_get",
                "responses": {
                    "200": {
                        "description": "The page of repair cases"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/repairs/facility": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Repair case collection of facilities",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection the\ncases with their consumer, inspection_template, approver and supervisor, the correct, notcorrect and unhandled item\ncounts, rowclass and repair_status, by planned time. Without a consumer in the path: from/to (Y-m-d, default this\nmonth) limit the planned time, department_ids (comma-separated; default the division_id departments) the consumers.\nWith one: three years back to 101 years ahead, no department limit. from_updated_at: every row updated since,\narchived and deleted ones included, without the period. Other filters: consumer_id, facility_id or\nmain_facility_id (a facility), worker_id (supervisor, approver or the consumer's responsible worker), current_page\n(1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "get_api_repairs_facility_get",
                "responses": {
                    "200": {
                        "description": "The page of repair cases"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/repairs/facility/{consumer_id}": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Repair case collection of one facility",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection the\ncases with their consumer, inspection_template, approver and supervisor, the correct, notcorrect and unhandled item\ncounts, rowclass and repair_status, by planned time. Without a consumer in the path: from/to (Y-m-d, default this\nmonth) limit the planned time, department_ids (comma-separated; default the division_id departments) the consumers.\nWith one: three years back to 101 years ahead, no department limit. from_updated_at: every row updated since,\narchived and deleted ones included, without the period. Other filters: consumer_id, facility_id or\nmain_facility_id (a facility), worker_id (supervisor, approver or the consumer's responsible worker), current_page\n(1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "get_api_repairs_facility_forone_get",
                "parameters": [
                    {
                        "name": "consumer_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The page of repair cases"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/repairs/workobject/{consumer_id}": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Repair case collection of one work object",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection the\ncases with their consumer, inspection_template, approver and supervisor, the correct, notcorrect and unhandled item\ncounts, rowclass and repair_status, by planned time. Without a consumer in the path: from/to (Y-m-d, default this\nmonth) limit the planned time, department_ids (comma-separated; default the division_id departments) the consumers.\nWith one: three years back to 101 years ahead, no department limit. from_updated_at: every row updated since,\narchived and deleted ones included, without the period. Other filters: consumer_id, facility_id or\nmain_facility_id (a facility), worker_id (supervisor, approver or the consumer's responsible worker), current_page\n(1), per_page (500).",
                "externalDocs": {
                    "description": "Help: Repair works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/repair/"
                },
                "operationId": "get_api_repairs_workobject_forone_get",
                "parameters": [
                    {
                        "name": "consumer_id",
                        "in": "path",
                        "description": "Work object id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The page of repair cases"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/repair",
                        "title": "Repair works",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/repair/",
                            "en": "https://help.terake.com/en/vehiclebook/repair/"
                        }
                    }
                ]
            }
        },
        "/api/pre-usage-check/facility/{consumer_id}": {
            "get": {
                "tags": [
                    "InspectionCases"
                ],
                "summary": "Pre-usage checks of one facility",
                "description": "Returns { pagination, collection }: pagination { total, per_page, current_page, from, to }, collection the\ncompleted pre-usage checks of the facility, newest first, with the inspector and the item counts. Filters: worker_id\n(the inspector), current_page (1), per_page (10).",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/facilities/"
                },
                "operationId": "get_api_pre_usage_check_facility_get",
                "parameters": [
                    {
                        "name": "consumer_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The page of checks"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-task/{id}": {
            "get": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Returns one InspectionTask by id or uuid",
                "description": "A task of the caller's company; the template in the third path is not read.",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "get_api_inspection_task_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionTask id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionTask (serializer group inspection_task)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionTask5"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Deletes an inspection task and bumps the timestamp of its master template",
                "description": "Soft delete after the rights check.",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "delete_api_inspection_task_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionTask id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionTask (serializer group inspection_task)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionTask5"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            }
        },
        "/api/inspection_task/{id}": {
            "get": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Returns one InspectionTask by id or uuid",
                "description": "A task of the caller's company; the template in the third path is not read.",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "get_api_inspection_task_get_alias",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionTask id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionTask (serializer group inspection_task)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionTask5"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    },
                    {
                        "route": "/vehiclebook/inspectioncaseview",
                        "title": "Carrying out maintenance",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectioncaseview/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectioncaseview/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-template/{inspection_case_id}/inspection-task/{id}": {
            "get": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Returns one InspectionTask by id or uuid",
                "description": "A task of the caller's company; the template in the third path is not read.",
                "operationId": "get_api_inspection_template_task_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionTask id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "inspection_case_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionTask (serializer group inspection_task)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionTask5"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                }
            }
        },
        "/api/inspection-task-matrix-y/{id}": {
            "get": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Inspection tasks forming the Y axis of the cross matrix for one InspectionMasterTemplate",
                "description": "One row per undeleted task of the company's master template, in display order, with a \"template_id,<id>\": true key for every template the task belongs to.",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "get_api_inspection_task_matrix_y",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionMasterTemplate id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Rows of the task matrix"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-tasks-by-facility/{facility_id}": {
            "get": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "All inspection tasks available for Facility",
                "description": "The company's undeleted tasks of the facility's maintenance schedule, in display order; [] when it has none.",
                "externalDocs": {
                    "description": "Help: Machines and equipment (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/facilities/"
                },
                "operationId": "get_api_inspection_tasks_by_facility",
                "parameters": [
                    {
                        "name": "facility_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionTask list (serializer group inspections)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/InspectionTask3"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Facility not found among the company and its partners"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-task-matrix/{inspection_task_id}/toggle/{inspection_template_id}": {
            "put": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Attaches or detaches an inspection task from a slave template",
                "description": "Returns the updated task row, or { error } with HTTP 200 when either is not the company's.",
                "operationId": "put_api_inspection_task_matrix_toggle",
                "parameters": [
                    {
                        "name": "inspection_task_id",
                        "in": "path",
                        "description": "InspectionTask id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "inspection_template_id",
                        "in": "path",
                        "description": "InspectionTemplate id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The task row, or { error }"
                    }
                }
            }
        },
        "/api/inspection-task/{id}/move/{direction}": {
            "put": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Moves an inspection task up, down, first or last in the list order",
                "description": "Returns the moved task row, or { error } with HTTP 200 for another company's task or an unknown direction.",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "put_api_inspection_task_put_move",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionTask id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "direction",
                        "in": "path",
                        "description": "up, down, first or last",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The task row, or { error }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-template/{inspection_m_template_id}/inspection-task": {
            "post": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Creates or modifies an inspection task of a master template",
                "description": "A new task of the company's master template, last in order, or the company's task the PUT path names; returns the task row.",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "post_api_inspection_template_task_post",
                "parameters": [
                    {
                        "name": "inspection_m_template_id",
                        "in": "path",
                        "description": "InspectionMasterTemplate id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "short_desc": {
                                        "type": "string"
                                    },
                                    "long_desc": {
                                        "type": "string"
                                    },
                                    "action_desc": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The task row"
                    },
                    "404": {
                        "description": "Master template or task not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-template/{inspection_m_template_id}/inspection-task/{inspection_task_id}": {
            "put": {
                "tags": [
                    "InspectionTemplates"
                ],
                "operationId": "put_api_inspection_template_task_put",
                "parameters": [
                    {
                        "name": "inspection_m_template_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "inspection_task_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/inspection-template/{inspection_m_template_id}/inspection-task/{id}": {
            "delete": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Deletes an inspection task and bumps the timestamp of its master template",
                "description": "Soft delete after the rights check.",
                "operationId": "delete_api_inspection_template_task_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionTask id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "inspection_m_template_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionTask (serializer group inspection_task)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionTask5"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                }
            }
        },
        "/api/inspection-template": {
            "get": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "InspectionTemplate collection",
                "description": "One table row per undeleted master template of the company: id, name, matrix_y, an \"inspection_type,<id>\": true key per template and inspection_types (the type ids).",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "get_api_inspection_templates_get_collection",
                "responses": {
                    "200": {
                        "description": "Rows of the master template table"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-template/{id}": {
            "get": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "InspectionTemplate by ID or UUID",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "get_api_inspection_template_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionTemplate id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionTemplate (serializer group inspections)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionTemplate7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-template/{inspection_template_id}/inspection-task": {
            "get": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Inspection templates (X-axis) for master template with cross matrix",
                "description": "The undeleted templates of the company's master template.",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "get_api_inspection_template_inspection_task",
                "parameters": [
                    {
                        "name": "inspection_template_id",
                        "in": "path",
                        "description": "InspectionMasterTemplate id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionTemplate list (serializer group inspections)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/InspectionTemplate7"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-template/{inspection_master_template_id}/toggle/{inspection_type_id}": {
            "put": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Attaches or detaches an inspection type from a master template",
                "description": "Returns the updated master template row, or { error } with HTTP 200 when either is not the company's.",
                "operationId": "put_api_inspection_template_toggle",
                "parameters": [
                    {
                        "name": "inspection_master_template_id",
                        "in": "path",
                        "description": "InspectionMasterTemplate id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "inspection_type_id",
                        "in": "path",
                        "description": "InspectionType id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The master template row, or { error }"
                    }
                }
            }
        },
        "/api/inspection-master-template/{id}": {
            "get": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Returns one InspectionMasterTemplate by id or uuid",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "get_api_inspection_master_template_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionMasterTemplate id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionMasterTemplate (serializer group inspections)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionMasterTemplate8"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "InspectionTemplates"
                ],
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "put_api_inspection_master_template_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Deletes InspectionMasterTemplate by ID or UUID",
                "description": "Soft delete after the rights check; the master template's templates are deleted with it.",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "delete_api_inspection_master_template_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionMasterTemplate id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionMasterTemplate (serializer group inspections)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionMasterTemplate8"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-master-template": {
            "post": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Creates or modifies an inspection master template",
                "description": "A new master template of the company, or the company's one the id names (path, query or body); the name from the body. Returns the master template row.",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "post_api_inspection_master_template_post",
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The master template row"
                    },
                    "404": {
                        "description": "The id names no master template of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-type": {
            "get": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Inspection types (maintenance intervals) of the company",
                "description": "Neither deleted nor archived; ?is_archived=1 the archived ones and those deleted within 30 days; ?from_updated_at=<ts> everything changed since.",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "get_api_inspection_type_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionType list (serializer groups default, inspections)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/InspectionType"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Creates or modifies an inspection type",
                "description": "A new inspection type of the company, or the company's one the id names (path, query or body); an empty body when that is not the company's.",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "post_api_inspection_type_post",
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "enginehours": {
                                        "type": "integer"
                                    },
                                    "kilometers": {
                                        "type": "integer"
                                    },
                                    "days": {
                                        "type": "integer"
                                    },
                                    "enginehours_alert": {
                                        "type": "integer"
                                    },
                                    "kilometers_alert": {
                                        "type": "integer"
                                    },
                                    "days_alert": {
                                        "type": "integer"
                                    },
                                    "is_every_use_check": {
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "InspectionType (serializer group inspections), or an empty body",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionType2"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            }
        },
        "/api/inspection-type/{id}": {
            "get": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Returns one InspectionType, the maintenance interval definition, by id or uuid",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "get_api_inspection_type_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionType id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionType (serializer group inspections)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionType2"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "InspectionTemplates"
                ],
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "put_api_inspection_type_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "InspectionTemplates"
                ],
                "summary": "Deletes InspectionType by ID or UUID",
                "description": "Soft delete after the rights check; the type's templates are deleted with it.",
                "externalDocs": {
                    "description": "Help: Maintenance admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                },
                "operationId": "delete_api_inspection_type_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "InspectionType id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "InspectionType (serializer group inspections)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InspectionType2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "No right to modify"
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/inspectionadmin",
                        "title": "Maintenance admin",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/inspectionadmin/",
                            "en": "https://help.terake.com/en/vehiclebook/inspectionadmin/"
                        }
                    }
                ]
            }
        },
        "/api/integration-faults": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Gobus fault messages",
                "description": "GoBus's vehicle faults from the integration server, as it answers. Company 151 only.",
                "externalDocs": {
                    "description": "Help: Faults and problems (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/faults/"
                },
                "operationId": "get_integration_faults",
                "responses": {
                    "200": {
                        "description": "The integration server's answer, or an empty body"
                    },
                    "403": {
                        "description": "Not a GoBus worker"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/faults/",
                            "en": "https://help.terake.com/en/vehiclebook/faults/"
                        }
                    },
                    {
                        "route": "/transport/faults",
                        "title": "Faults and problems",
                        "help": {
                            "et": "https://help.terake.com/et/transport/faults/",
                            "en": "https://help.terake.com/en/transport/faults/"
                        }
                    }
                ]
            }
        },
        "/api/integration-messages": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Gobus driver messages",
                "description": "GoBus's driver messages from the integration server, as it answers. Company 151 only.",
                "externalDocs": {
                    "description": "Help: Messages for drivers (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/messages/"
                },
                "operationId": "get_integration_messages",
                "responses": {
                    "200": {
                        "description": "The integration server's answer, or an empty body"
                    },
                    "403": {
                        "description": "Not a GoBus worker"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/messages",
                        "title": "Messages for drivers",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/messages/",
                            "en": "https://help.terake.com/en/vehiclebook/messages/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Send a Gobus driver message",
                "description": "Passes the message to the integration server and returns its answer. Company 151 only.",
                "externalDocs": {
                    "description": "Help: Messages for drivers (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/messages/"
                },
                "operationId": "post_integration_messages_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "valid_until": {
                                        "type": "string"
                                    },
                                    "message": {
                                        "type": "string"
                                    },
                                    "region": {
                                        "description": "Region {id}",
                                        "type": "object"
                                    },
                                    "driver_codes": {
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The integration server's answer, or an empty body"
                    },
                    "403": {
                        "description": "Not a GoBus worker"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/messages",
                        "title": "Messages for drivers",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/messages/",
                            "en": "https://help.terake.com/en/vehiclebook/messages/"
                        }
                    }
                ]
            }
        },
        "/api/integration-drivers/{region_id}": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Gobus drivers",
                "description": "GoBus's drivers of a region from the integration server, as it answers. Company 151 only.",
                "externalDocs": {
                    "description": "Help: Messages for drivers (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/messages/"
                },
                "operationId": "get_integration_drivers",
                "parameters": [
                    {
                        "name": "region_id",
                        "in": "path",
                        "description": "Region id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The integration server's answer, or an empty body"
                    },
                    "403": {
                        "description": "Not a GoBus worker"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/messages",
                        "title": "Messages for drivers",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/messages/",
                            "en": "https://help.terake.com/en/vehiclebook/messages/"
                        }
                    }
                ]
            }
        },
        "/api/integrations": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Integration collection",
                "description": "The company's integrations that are neither deleted nor archived, by id.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "get_api_integration_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived integrations and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Integration (serializer groups integration, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Integration"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Create new Integration",
                "description": "Creates an Integration of the company, or modifies the one the body names by \"id\" or \"uuid\". A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "post_api_integration_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "integration_partner": {
                                        "description": "IntegrationPartner {id}",
                                        "type": "object"
                                    },
                                    "apikey": {
                                        "description": "The partner's API key or token",
                                        "type": "string"
                                    },
                                    "secret": {
                                        "description": "The partner's secret",
                                        "type": "string"
                                    },
                                    "apiurl": {
                                        "description": "The partner's API address",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Integration (serializer groups integration, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Integration2"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/integrations/{id}": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Integration by ID or UUID",
                "description": "Returns Integration by ID or UUID.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "get_api_integration_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Integration id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Integration (serializer groups integration, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Integration2"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Modify Integration",
                "description": "Modifies an Integration. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "put_api_integration_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Integration id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Must equal the path id",
                                        "type": "integer"
                                    },
                                    "integration_partner": {
                                        "description": "IntegrationPartner {id}",
                                        "type": "object"
                                    },
                                    "apikey": {
                                        "description": "The partner's API key or token",
                                        "type": "string"
                                    },
                                    "secret": {
                                        "description": "The partner's secret",
                                        "type": "string"
                                    },
                                    "apiurl": {
                                        "description": "The partner's API address",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Integration (serializer groups integration, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Integration2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Integration"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Delete Integration by ID or UUID",
                "description": "Deletes Integration by ID or UUID (marks it deleted and archived). Returns the deleted Integration.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "delete_api_integration_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Integration id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Integration (serializer groups integration, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Integration2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Integration"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/integration-partner-data/{terake_object_code}/{object_id}": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Integration partner id's related to object",
                "description": "The company's mappings of the object to the telemetry partners' ids, and for a facility of a company the caller's company may see its latest telemetry reading of any partner but 13.",
                "externalDocs": {
                    "description": "Help: Inventory (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/inventory/"
                },
                "operationId": "get_get_integration_partner_ids",
                "parameters": [
                    {
                        "name": "terake_object_code",
                        "in": "path",
                        "description": "Terake object type code, e.g. facility",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "object_id",
                        "in": "path",
                        "description": "Id of the Terake object, of the type named by terake_object_code",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{items: [IntegrationPartnerObject (serializer group integration)], telemetry?: {integration_partner: {id, default_worker: {fullname}}, kilometers, enginehours, measuring_time}}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/integration-facility-timeline": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Demonstration facility timeline",
                "description": "A made-up timeline of one tractor on 12 July 2020 (ignition, drives and five mowing works with engine hours, kilometers, fuel and duration as texts), random on every call. No company data is read.",
                "operationId": "get_integration_facility_timeline",
                "responses": {
                    "200": {
                        "description": "{facility: {id, name}, data: [{type, displayname, start_timestamp, start_datetime, workobject?, params?}]}"
                    }
                }
            }
        },
        "/api/wialon-callback/{token}": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Wialon callback",
                "description": "Where Wialon's login returns the integration form's popup: the granted access token and SDK address become the Wialon integration of the company of the worker whose integration key is in the path, and the page hands them to the web client. Public; the key in the path is the credential.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "get_get_wialon_callback",
                "parameters": [
                    {
                        "name": "token",
                        "in": "path",
                        "description": "An \"integration\" key from GET /api/generate-token/integration",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "access_token",
                        "in": "query",
                        "description": "The Wialon access token",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "wialon_sdk_url",
                        "in": "query",
                        "description": "The Wialon SDK address",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "lang",
                        "in": "query",
                        "description": "Ignored",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "An HTML page that posts {integration_id, apikey, apiurl} to the web client, or {\"error_slug\": \"alert.incorrect_url\"}"
                    }
                },
                "security": [],
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/integrations/sync/main": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Integration sync data",
                "description": "Every integration that is neither deleted nor archived, with the partner's credentials and the company's vehicles the partner can match. Only Terake's integration service gets rows; any other caller gets [].",
                "operationId": "get_api_integration_sync_main",
                "responses": {
                    "200": {
                        "description": "List of {integration_id, company_id, integration_partner_id, apikey, secret, apiurl, updated_at_timestamp, vehicles: [{id, vin, linkable_reg_number, reg_number, show_in_map, outer_id, auto_workdone_duration, is_deleted, partner_id}]}"
                    }
                }
            }
        },
        "/api/integration-credentials": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "A company's SkyFMS access token",
                "description": "Only Terake's integration service; SkyFMS (integration_partner_id=4) only. The stored tokens are refreshed at SkyFMS when older than 58 minutes.",
                "operationId": "get_api_integration_credentials",
                "parameters": [
                    {
                        "name": "integration_partner_id",
                        "in": "query",
                        "description": "IntegrationPartner id; only 4 (SkyFMS) is served",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company_id",
                        "in": "query",
                        "description": "Company whose SkyFMS token is asked for",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{access_token}, or the failed refresh: {error, response_code, error_description} or SkyFMS's error with company_id and company_name"
                    },
                    "403": {
                        "description": "Another caller, another partner, or no SkyFMS tokens for the company"
                    }
                }
            }
        },
        "/api/workdones-for-tracks": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Workdones whose tracks are to be calculated",
                "description": "At most 30 stopped workdones (started since the first day of the previous month, stopped over 16 hours ago) of a main facility whose company has a Navirec, EcoFleet, SkyFMS or MapOn integration, whose track was never calculated or is older than their telemetry. Only Terake's integration service; any other caller gets 204.",
                "operationId": "get_workdones_for_tracks",
                "responses": {
                    "200": {
                        "description": "List of {workdone_id, facility_id, start_time, stop_time, from, to, integration_partner_id, company_id}"
                    },
                    "204": {
                        "description": "Not the integration service"
                    }
                }
            }
        },
        "/api/workdone-tracks": {
            "post": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Stores calculated workdone tracks",
                "description": "Replaces each workdone's tracks with the posted ones (tracks of one point are left out) and fills its telemetry's kilometers, engine hours and fuel consumption from their sums where still 0. Only Terake's integration service; any other caller gets {\"success\": \"error\"}.",
                "operationId": "post_workdones_for_paths",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "properties": {
                                        "workdone_id": {
                                            "type": "integer"
                                        },
                                        "integration_partner_id": {
                                            "description": "The telemetry's partner when it has none",
                                            "type": "integer"
                                        },
                                        "tracks": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "geoitem_id": {
                                                        "description": "Geo item of the work object the track ran on",
                                                        "type": "integer"
                                                    },
                                                    "start_time": {
                                                        "type": "string"
                                                    },
                                                    "stop_time": {
                                                        "type": "string"
                                                    },
                                                    "enginehours": {
                                                        "type": "number"
                                                    },
                                                    "kilometers": {
                                                        "type": "number"
                                                    },
                                                    "fuel_consumption": {
                                                        "type": "number"
                                                    },
                                                    "json_content": {
                                                        "description": "The track points",
                                                        "type": "array",
                                                        "items": {
                                                            "type": "object"
                                                        }
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"success\": \"great\"}, or {\"success\": \"error\"}"
                    },
                    "404": {
                        "description": "A workdone of the body does not exist (the ones before it are stored)"
                    }
                }
            }
        },
        "/api/workdone-drafts": {
            "post": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Posts candidate drafts to turn into workdone",
                "description": "Machine work the integration service detected, stored as drafts that the hourly workdone registration turns into workdones: a draft of a facility of the named company that lasted longer than the facility's auto_workdone_duration. Only Terake's integration service; any other caller gets {\"success\": \"error\"}.",
                "operationId": "post_post_workdone_drafts",
                "parameters": [
                    {
                        "name": "integration_partner_id",
                        "in": "query",
                        "description": "The partner whose area names the drafts' agrifield.name refer to",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "properties": {
                                        "facility_id": {
                                            "type": "integer"
                                        },
                                        "company_id": {
                                            "type": "integer"
                                        },
                                        "start_time": {
                                            "description": "Unix time",
                                            "type": "integer"
                                        },
                                        "stop_time": {
                                            "description": "Unix time",
                                            "type": "integer"
                                        },
                                        "worktype": {
                                            "description": "Worktype {id}",
                                            "type": "object"
                                        },
                                        "agrifield": {
                                            "description": "{name}: the partner's area name",
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"success\": \"great\"}, or {\"success\": \"error\"}"
                    }
                }
            }
        },
        "/api/telemetry/maxvalues": {
            "post": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Posts Facility last known enginehours and kilometers",
                "description": "Each reading becomes the facility's telemetry of that moment (values above 0 only). Only Terake's integration service; any other caller gets {\"success\": \"error\"}.",
                "operationId": "post_register_facility_max_values",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "properties": {
                                        "facility_id": {
                                            "type": "integer"
                                        },
                                        "partner_id": {
                                            "description": "IntegrationPartner id",
                                            "type": "integer"
                                        },
                                        "t": {
                                            "description": "Unix time of the reading",
                                            "type": "integer"
                                        },
                                        "enginehours": {
                                            "type": "number"
                                        },
                                        "kilometers": {
                                            "type": "number"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"success\": \"<n> rows\"}, or {\"success\": \"error\"}"
                    },
                    "404": {
                        "description": "A facility the caller's company cannot see, or an unknown partner (the readings before it are stored)"
                    }
                }
            }
        },
        "/api/sync-geoitems": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Work object outlines to sync",
                "description": "The geo items of work objects changed since they were last synced. Only Terake's integration service; any other caller gets {\"success\": \"error\", ...} with an empty list.",
                "operationId": "get_get_sync_geoitems",
                "parameters": [
                    {
                        "name": "batch_size",
                        "in": "query",
                        "description": "At most this many (50 by default)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{success, inserted, updated, returned, sync: [GeoItem (serializer groups integration, search)]}"
                    }
                }
            },
            "post": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Mark geoitems synced",
                "description": "Marks the named geo items synced. Only Terake's integration service changes anything; every caller gets {\"success\": \"great\"}.",
                "operationId": "post_post_sync_geoitems",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "synced_ids": {
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"success\": \"great\"}"
                    }
                }
            }
        },
        "/api/inventory_search/{query}": {
            "get": {
                "tags": [
                    "Inventory"
                ],
                "summary": "Search Facility",
                "description": "Finds the company's active Facility by registration number, NFC code, id or uuid; failing that, the object\n(Facility, Material, Worktype, Shift, Project and its parts) whose QR code of the company is the query.\nNone or several matches answer {\"error\": \"message.no_items_found\"} or {\"error\": \"message.more_than_one_item_found\"}.",
                "externalDocs": {
                    "description": "Help: Inventory (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/inventory/"
                },
                "operationId": "get_api_inventory_search_query_get",
                "parameters": [
                    {
                        "name": "query",
                        "in": "path",
                        "description": "id, uuid, NFC code, QR-code, or reg.Number (for Facilities)",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The object found (serializer groups inventory, baseattribute, search, shiftitem), or {\"error\": ...}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    }
                ]
            }
        },
        "/api/inventory_facility/{facility_id}/{event_name}": {
            "post": {
                "tags": [
                    "Inventory"
                ],
                "summary": "Change Inventory status by registering event",
                "description": "Registers an inventory event (by name or id) on the facility. \"take\" hands the facility to the caller\nfrom wherever it is.",
                "externalDocs": {
                    "description": "Help: Inventory (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/inventory/"
                },
                "operationId": "post_api_inventory_post_event",
                "parameters": [
                    {
                        "name": "facility_id",
                        "in": "path",
                        "description": "Facility id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "event_name",
                        "in": "path",
                        "description": "Event name or id, or \"take\"",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "another_worker_id": {
                                        "description": "Worker id when assigning inventory to third person (administrators and the storage worker only)",
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The new InventoryFacilityLog (serializer groups inventory, baseattribute), or {\"error\": \"message.unknown_event\" | \"message.facility_is_disabled\", ...}",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/InventoryFacilityLog5"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Facility not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/inventorylog/{id}": {
            "get": {
                "tags": [
                    "Inventory"
                ],
                "summary": "Get Facility Inventory Log",
                "description": "All Inventory events related with Facility, oldest first",
                "externalDocs": {
                    "description": "Help: Inventory (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/inventory/"
                },
                "operationId": "get_api_inventorylog_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Facility id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of InventoryFacilityLog (serializer groups inventory, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/InventoryFacilityLog5"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Facility not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/facilities/",
                            "en": "https://help.terake.com/en/admin/main/facilities/"
                        }
                    },
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/facilities",
                        "title": "Machines and equipment",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/facilities/",
                            "en": "https://help.terake.com/en/vehiclebook/facilities/"
                        }
                    }
                ]
            }
        },
        "/api/inventory_user": {
            "get": {
                "tags": [
                    "Inventory"
                ],
                "summary": "List of Facilities logged in person is currently using",
                "externalDocs": {
                    "description": "Help: Inventory (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/inventory/"
                },
                "operationId": "get_api_inventory_user_get",
                "responses": {
                    "200": {
                        "description": "List of Facility (serializer groups inventory, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Facility18"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    }
                ]
            }
        },
        "/api/inventory_owner": {
            "get": {
                "tags": [
                    "Inventory"
                ],
                "summary": "List of Facilities logged in person is currently owning",
                "description": "The facilities whose storage worker the caller is, by name.",
                "externalDocs": {
                    "description": "Help: Inventory (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/inventory/"
                },
                "operationId": "get_api_inventory_owner_get",
                "responses": {
                    "200": {
                        "description": "List of Facility (serializer groups inventory, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Facility18"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/inventory",
                        "title": "Inventory",
                        "help": {
                            "et": "https://help.terake.com/et/my/inventory/",
                            "en": "https://help.terake.com/en/my/inventory/"
                        }
                    }
                ]
            }
        },
        "/api/journey_forms": {
            "get": {
                "tags": [
                    "JourneyForms"
                ],
                "summary": "JourneyForm collection",
                "description": "The company's undeleted journey forms that start on or after the first day of the period and stop by the end of its last day, by start, at most 1000.",
                "externalDocs": {
                    "description": "Help: Journey forms (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/journey_forms/"
                },
                "operationId": "get_api_journey_forms_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "First day, as Y-m-d (a time part is ignored). Default: a week ago.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Last day, as Y-m-d, included whole. Default: tomorrow.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of JourneyForm (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/JourneyForm"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/journey_forms",
                        "title": "Journey forms",
                        "help": {
                            "et": "https://help.terake.com/et/transport/journey_forms/",
                            "en": "https://help.terake.com/en/transport/journey_forms/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "JourneyForms"
                ],
                "summary": "Create JourneyForm",
                "description": "Creates a journey form of the company, or changes the one the body names by \"id\" or \"uuid\"; either way its start and stop become today 08:00 and 17:00.",
                "externalDocs": {
                    "description": "Help: Journey forms (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/journey_forms/"
                },
                "operationId": "post_api_journey_forms_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "sheet_number": {
                                        "type": "string"
                                    },
                                    "worker": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "facility": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The JourneyForm (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/JourneyForm"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/journey_forms",
                        "title": "Journey forms",
                        "help": {
                            "et": "https://help.terake.com/et/transport/journey_forms/",
                            "en": "https://help.terake.com/en/transport/journey_forms/"
                        }
                    }
                ]
            }
        },
        "/api/journey_forms/{id}": {
            "get": {
                "tags": [
                    "JourneyForms"
                ],
                "summary": "Get JourneyForm",
                "description": "One journey form of the company, by id or uuid.",
                "externalDocs": {
                    "description": "Help: Journey forms (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/journey_forms/"
                },
                "operationId": "get_api_journey_forms_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "JourneyForm id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The JourneyForm (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/JourneyForm"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/journey_forms",
                        "title": "Journey forms",
                        "help": {
                            "et": "https://help.terake.com/et/transport/journey_forms/",
                            "en": "https://help.terake.com/en/transport/journey_forms/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "JourneyForms"
                ],
                "summary": "Modify JourneyForm",
                "description": "Changes a journey form of the company. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Journey forms (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/journey_forms/"
                },
                "operationId": "put_api_journey_forms_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "JourneyForm id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    },
                                    "sheet_number": {
                                        "type": "string"
                                    },
                                    "worker": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "facility": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The JourneyForm (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/JourneyForm"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this JourneyForm"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/journey_forms",
                        "title": "Journey forms",
                        "help": {
                            "et": "https://help.terake.com/et/transport/journey_forms/",
                            "en": "https://help.terake.com/en/transport/journey_forms/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "JourneyForms"
                ],
                "summary": "Delete JourneyForm",
                "description": "Marks the journey form deleted and archived. Returns it.",
                "externalDocs": {
                    "description": "Help: Journey forms (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/journey_forms/"
                },
                "operationId": "delete_api_journey_forms_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "JourneyForm id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The JourneyForm (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/JourneyForm"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this JourneyForm"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/journey_forms",
                        "title": "Journey forms",
                        "help": {
                            "et": "https://help.terake.com/et/transport/journey_forms/",
                            "en": "https://help.terake.com/en/transport/journey_forms/"
                        }
                    }
                ]
            }
        },
        "/api/journey_forms/{id}/items": {
            "get": {
                "tags": [
                    "JourneyForms"
                ],
                "summary": "JourneyForm items",
                "description": "The undeleted legs of one of the company's journey forms, by start; [] for another company's form.",
                "externalDocs": {
                    "description": "Help: Journey forms (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/journey_forms/"
                },
                "operationId": "get_api_journey_forms_get_items_collection",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "JourneyForm id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of JourneyFormItem (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/JourneyFormItem"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/journey_forms",
                        "title": "Journey forms",
                        "help": {
                            "et": "https://help.terake.com/et/transport/journey_forms/",
                            "en": "https://help.terake.com/en/transport/journey_forms/"
                        }
                    }
                ]
            }
        },
        "/api/journey_forms/{id}/additem": {
            "post": {
                "tags": [
                    "JourneyForms"
                ],
                "summary": "Add JourneyForm item",
                "description": "Adds a leg to one of the company's undeleted journey forms and recomputes the form's mileage, start and stop. Answers {\"response\": \"success\"}.",
                "externalDocs": {
                    "description": "Help: Journey forms (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/journey_forms/"
                },
                "operationId": "post_api_journey_forms_post_additem",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "JourneyForm id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "start_time": {
                                        "description": "Start of the leg, as Y-m-d H:i:s",
                                        "type": "string"
                                    },
                                    "stop_time": {
                                        "description": "End of the leg, as Y-m-d H:i:s",
                                        "type": "string"
                                    },
                                    "mileage": {
                                        "description": "Planned mileage (the trip route's, when it has one)",
                                        "type": "number"
                                    },
                                    "worktype": {
                                        "description": "{\"id\": ...}, a work type of the company",
                                        "type": "object"
                                    },
                                    "trip_route": {
                                        "description": "{\"id\": ...}, a trip route of the company",
                                        "type": "object"
                                    },
                                    "charter_job": {
                                        "description": "{\"id\": ...}, a charter job of the company",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"response\": \"success\"}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/journey_forms",
                        "title": "Journey forms",
                        "help": {
                            "et": "https://help.terake.com/et/transport/journey_forms/",
                            "en": "https://help.terake.com/en/transport/journey_forms/"
                        }
                    }
                ]
            }
        },
        "/api/journey_forms/{id}/deleteitem": {
            "delete": {
                "tags": [
                    "JourneyForms"
                ],
                "summary": "Delete JourneyForm item",
                "description": "Marks the leg ?item_id= of one of the company's journey forms deleted and recomputes the form. Answers {\"response\": \"success\"}.",
                "externalDocs": {
                    "description": "Help: Journey forms (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/journey_forms/"
                },
                "operationId": "delete_api_journey_forms_delete_deleteitem",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "JourneyForm id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "item_id",
                        "in": "query",
                        "description": "JourneyFormItem id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{\"response\": \"success\"}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/journey_forms",
                        "title": "Journey forms",
                        "help": {
                            "et": "https://help.terake.com/et/transport/journey_forms/",
                            "en": "https://help.terake.com/en/transport/journey_forms/"
                        }
                    }
                ]
            }
        },
        "/api/journey_forms/{id}/classificator/charter_jobs": {
            "get": {
                "tags": [
                    "JourneyForms"
                ],
                "summary": "Charter jobs for a JourneyForm",
                "description": "The company's undeleted charter jobs that no journey form leg carries yet.",
                "externalDocs": {
                    "description": "Help: Journey forms (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/journey_forms/"
                },
                "operationId": "get_api_journey_forms_get_charter_jobs_collection",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "JourneyForm id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of CharterJob (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/CharterJob"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/journey_forms",
                        "title": "Journey forms",
                        "help": {
                            "et": "https://help.terake.com/et/transport/journey_forms/",
                            "en": "https://help.terake.com/en/transport/journey_forms/"
                        }
                    }
                ]
            }
        },
        "/api/lifespan-type": {
            "get": {
                "tags": [
                    "Materials"
                ],
                "externalDocs": {
                    "description": "Help: Lifespan measurement (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/lifespantype/"
                },
                "operationId": "get_api_lifespan_type_list",
                "parameters": [
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "With 1: rows archived by their owner or by the calling company, plus rows deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Unix timestamp: every row changed at or after it, deleted and archived included, for delta sync",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "groups",
                        "in": "query",
                        "description": "Comma-separated subset of the serializer groups this endpoint offers; narrows the response",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/lifespantype",
                        "title": "Lifespan measurement",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/lifespantype/",
                            "en": "https://help.terake.com/en/admin/main/lifespantype/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Materials"
                ],
                "externalDocs": {
                    "description": "Help: Lifespan measurement (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/lifespantype/"
                },
                "operationId": "post_api_lifespan_type_create",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "properties": {
                                    "id": {
                                        "description": "Names an existing row to update instead of creating one",
                                        "type": "integer"
                                    },
                                    "uuid": {
                                        "description": "Same, by uuid (clients that create records offline)",
                                        "type": "string"
                                    },
                                    "import_type": {
                                        "description": "With \"file\" (the file import screen) the row to update is matched by outer_id first, then id, then uuid, within the calling company",
                                        "type": "string",
                                        "enum": [
                                            "file"
                                        ]
                                    },
                                    "outer_id": {
                                        "description": "The external identifier a file import matches on; only read with import_type=file",
                                        "type": "string"
                                    },
                                    "name": {
                                        "description": "Lifespan type name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/lifespantype",
                        "title": "Lifespan measurement",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/lifespantype/",
                            "en": "https://help.terake.com/en/admin/main/lifespantype/"
                        }
                    }
                ]
            }
        },
        "/api/lifespan-type/{id}": {
            "get": {
                "tags": [
                    "Materials"
                ],
                "externalDocs": {
                    "description": "Help: Lifespan measurement (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/lifespantype/"
                },
                "operationId": "get_api_lifespan_type_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/lifespantype",
                        "title": "Lifespan measurement",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/lifespantype/",
                            "en": "https://help.terake.com/en/admin/main/lifespantype/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Materials"
                ],
                "externalDocs": {
                    "description": "Help: Lifespan measurement (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/lifespantype/"
                },
                "operationId": "put_api_lifespan_type_update",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "properties": {
                                    "name": {
                                        "description": "Lifespan type name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/lifespantype",
                        "title": "Lifespan measurement",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/lifespantype/",
                            "en": "https://help.terake.com/en/admin/main/lifespantype/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Materials"
                ],
                "externalDocs": {
                    "description": "Help: Lifespan measurement (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/lifespantype/"
                },
                "operationId": "delete_api_lifespan_type_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/lifespantype",
                        "title": "Lifespan measurement",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/lifespantype/",
                            "en": "https://help.terake.com/en/admin/main/lifespantype/"
                        }
                    }
                ]
            }
        },
        "/api/lifespan-type/{id}/togglearchive": {
            "put": {
                "tags": [
                    "Materials"
                ],
                "externalDocs": {
                    "description": "Help: Lifespan measurement (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/lifespantype/"
                },
                "operationId": "put_api_lifespan_type_togglearchive",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/lifespantype",
                        "title": "Lifespan measurement",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/lifespantype/",
                            "en": "https://help.terake.com/en/admin/main/lifespantype/"
                        }
                    }
                ]
            }
        },
        "/api/locationareas": {
            "get": {
                "tags": [
                    "Location areas"
                ],
                "externalDocs": {
                    "description": "Help: Regions (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/regions/"
                },
                "operationId": "get_api_locationareas_list",
                "parameters": [
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "With 1: rows archived by their owner or by the calling company, plus rows deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Unix timestamp: every row changed at or after it, deleted and archived included, for delta sync",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "groups",
                        "in": "query",
                        "description": "Comma-separated subset of the serializer groups this endpoint offers; narrows the response",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/regions",
                        "title": "Regions",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/regions/",
                            "en": "https://help.terake.com/en/admin/main/regions/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Location areas"
                ],
                "externalDocs": {
                    "description": "Help: Regions (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/regions/"
                },
                "operationId": "post_api_locationareas_create",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "required": [
                                    "name"
                                ],
                                "properties": {
                                    "id": {
                                        "description": "Names an existing row to update instead of creating one",
                                        "type": "integer"
                                    },
                                    "uuid": {
                                        "description": "Same, by uuid (clients that create records offline)",
                                        "type": "string"
                                    },
                                    "import_type": {
                                        "description": "With \"file\" (the file import screen) the row to update is matched by outer_id first, then id, then uuid, within the calling company",
                                        "type": "string",
                                        "enum": [
                                            "file"
                                        ]
                                    },
                                    "outer_id": {
                                        "description": "Identifier in an external system",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "name": {
                                        "description": "Area name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/regions",
                        "title": "Regions",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/regions/",
                            "en": "https://help.terake.com/en/admin/main/regions/"
                        }
                    }
                ]
            }
        },
        "/api/locationareas/{id}": {
            "get": {
                "tags": [
                    "Location areas"
                ],
                "externalDocs": {
                    "description": "Help: Admin Settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/index/"
                },
                "operationId": "get_api_locationareas_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/regions",
                        "title": "Regions",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/regions/",
                            "en": "https://help.terake.com/en/admin/main/regions/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Location areas"
                ],
                "externalDocs": {
                    "description": "Help: Regions (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/regions/"
                },
                "operationId": "put_api_locationareas_update",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "properties": {
                                    "name": {
                                        "description": "Area name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "outer_id": {
                                        "description": "Identifier in an external system",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/regions",
                        "title": "Regions",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/regions/",
                            "en": "https://help.terake.com/en/admin/main/regions/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Location areas"
                ],
                "externalDocs": {
                    "description": "Help: Regions (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/regions/"
                },
                "operationId": "delete_api_locationareas_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/regions",
                        "title": "Regions",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/regions/",
                            "en": "https://help.terake.com/en/admin/main/regions/"
                        }
                    }
                ]
            }
        },
        "/api/locationareas/{id}/togglearchive": {
            "put": {
                "tags": [
                    "Location areas"
                ],
                "externalDocs": {
                    "description": "Help: Regions (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/regions/"
                },
                "operationId": "put_api_locationareas_togglearchive",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/regions",
                        "title": "Regions",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/regions/",
                            "en": "https://help.terake.com/en/admin/main/regions/"
                        }
                    }
                ]
            }
        },
        "/api/manurestorages": {
            "get": {
                "tags": [
                    "ManureStorages"
                ],
                "summary": "ManureStorage collection",
                "description": "The company's manure storages by id.",
                "externalDocs": {
                    "description": "Help: Manure storages (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/manurestorage/"
                },
                "operationId": "get_api_manurestorages_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "Archived records and those deleted within 30 days instead",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of ManureStorage (serializer groups manurestorages, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/ManureStorage"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/manurestorage",
                        "title": "Manure storages",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/manurestorage/",
                            "en": "https://help.terake.com/en/fieldbook/manurestorage/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "ManureStorages"
                ],
                "summary": "Create new ManureStorage",
                "description": "Creates a manure storage, or changes the company's storage the body names by id or uuid\n(with import_type=file: by outer_id, id or uuid). The agrifields of the body are added.",
                "externalDocs": {
                    "description": "Help: Manure storages (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/manurestorage/"
                },
                "operationId": "post_api_manurestorages_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "location_address": {
                                        "type": "string"
                                    },
                                    "lat": {
                                        "type": "number"
                                    },
                                    "lng": {
                                        "type": "number"
                                    },
                                    "storage_size": {
                                        "type": "number"
                                    },
                                    "requested_start_date": {
                                        "description": "Empty or null is now",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "requested_end_date": {
                                        "description": "Empty or null is now",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "usage_start_date": {
                                        "description": "Empty or null is now",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "usage_end_date": {
                                        "description": "Empty or null is now",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "agrifields": {
                                        "description": "Agrifields served by the storage. Objects with an id field.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The ManureStorage (serializer groups manurestorages, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ManureStorage"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/manurestorage",
                        "title": "Manure storages",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/manurestorage/",
                            "en": "https://help.terake.com/en/fieldbook/manurestorage/"
                        }
                    }
                ]
            }
        },
        "/api/manurestorages/{id}": {
            "get": {
                "tags": [
                    "ManureStorages"
                ],
                "summary": "ManureStorage by ID or UUID",
                "externalDocs": {
                    "description": "Help: Manure storages (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/manurestorage/"
                },
                "operationId": "get_api_manurestorages_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ManureStorage id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The ManureStorage (serializer groups manurestorages, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ManureStorage"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not a manure storage of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/manurestorage",
                        "title": "Manure storages",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/manurestorage/",
                            "en": "https://help.terake.com/en/fieldbook/manurestorage/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "ManureStorages"
                ],
                "summary": "Modifies ManureStorage",
                "description": "The body must repeat the path id as \"id\". The agrifields of the body replace the served ones; without \"agrifields\" none remain.",
                "externalDocs": {
                    "description": "Help: Manure storages (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/manurestorage/"
                },
                "operationId": "put_api_manurestorages_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ManureStorage id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Must equal the path id",
                                        "type": "string"
                                    },
                                    "location_address": {
                                        "type": "string"
                                    },
                                    "agrifields": {
                                        "description": "Agrifields served by the storage. Objects with an id field.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The ManureStorage (serializer groups manurestorages, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ManureStorage"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify it"
                    },
                    "404": {
                        "description": "Not a manure storage of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/manurestorage",
                        "title": "Manure storages",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/manurestorage/",
                            "en": "https://help.terake.com/en/fieldbook/manurestorage/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "ManureStorages"
                ],
                "summary": "Delete ManureStorage by ID or UUID",
                "externalDocs": {
                    "description": "Help: Manure storages (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/manurestorage/"
                },
                "operationId": "delete_api_manurestorages_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ManureStorage id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted ManureStorage (serializer groups manurestorages, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ManureStorage"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify it"
                    },
                    "404": {
                        "description": "Not a manure storage of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/manurestorage",
                        "title": "Manure storages",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/manurestorage/",
                            "en": "https://help.terake.com/en/fieldbook/manurestorage/"
                        }
                    }
                ]
            }
        },
        "/api/materials": {
            "get": {
                "tags": [
                    "Materials"
                ],
                "summary": "Material collection",
                "description": "The materials the company may see (its own, the generic companies' and its sharing partners'), neither deleted nor archived, by name, at most 10000; /api/materials leaves out work units (category 5), /api/workunits lists only them. \"_amount\" is the stock of the company's own materials.",
                "externalDocs": {
                    "description": "Help: Materials (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/materials/"
                },
                "operationId": "get_api_materials_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived materials and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Material (serializer groups material, owner, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Material11"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/materials/",
                            "en": "https://help.terake.com/en/admin/main/materials/"
                        }
                    },
                    {
                        "route": "/fieldbook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/materials/",
                            "en": "https://help.terake.com/en/fieldbook/materials/"
                        }
                    },
                    {
                        "route": "/storage/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materials/",
                            "en": "https://help.terake.com/en/storage/materials/"
                        }
                    },
                    {
                        "route": "/vehiclebook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/materials/",
                            "en": "https://help.terake.com/en/vehiclebook/materials/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Materials"
                ],
                "summary": "Create or modify Material",
                "description": "Creates a Material of the company, or modifies the one an \"id\" (path, query or body) names; the body \"id\" must then equal it. A key the body leaves out leaves that field alone. On /api/materials also material_impact_data and seed_coating_data; on both material_config.",
                "externalDocs": {
                    "description": "Help: Materials (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/materials/"
                },
                "operationId": "post_api_materials_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Material id; required for modification, leave it out to create",
                                        "type": "integer"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "category_name": {
                                        "type": "string"
                                    },
                                    "formula_n": {
                                        "type": "string"
                                    },
                                    "formula_p": {
                                        "type": "string"
                                    },
                                    "formula_k": {
                                        "type": "string"
                                    },
                                    "formula_s": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "batch_number": {
                                        "type": "string"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    },
                                    "is_coated_seed": {
                                        "type": "boolean"
                                    },
                                    "is_undersowing": {
                                        "type": "boolean"
                                    },
                                    "is_cover_crop": {
                                        "type": "boolean"
                                    },
                                    "is_material": {
                                        "type": "boolean"
                                    },
                                    "is_product": {
                                        "type": "boolean"
                                    },
                                    "is_coating_material": {
                                        "type": "boolean"
                                    },
                                    "cost_per_unit": {
                                        "type": "number"
                                    },
                                    "price_per_unit": {
                                        "type": "number"
                                    },
                                    "material_category": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "amount_category": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "calc_amount_category": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "crop": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "material_certificate": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "material_type": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "material_second_type": {
                                        "description": "{\"id\": ...}; kept only with material type 7",
                                        "type": "object"
                                    },
                                    "master_material": {
                                        "description": "{\"id\": ...}; kept only with material types 1, 6 and 100",
                                        "type": "object"
                                    },
                                    "material_impact_data": {
                                        "description": "year0_percent_n ... year2_percent_k",
                                        "type": "object"
                                    },
                                    "seed_coating_data": {
                                        "description": "{\"coating_material\": {\"id\": ...}, \"consumption_ratio_per_base_unit\": ...}",
                                        "type": "object"
                                    },
                                    "material_config": {
                                        "description": "click_amount, min_seconds_between_clicks, default_amount, default_ratio_per_unit",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Material (serializer groups material, material_all, owner, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Material12"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Material"
                    },
                    "404": {
                        "description": "Not found among the materials the company may see, or material 2"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/materials/",
                            "en": "https://help.terake.com/en/admin/main/materials/"
                        }
                    },
                    {
                        "route": "/fieldbook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/materials/",
                            "en": "https://help.terake.com/en/fieldbook/materials/"
                        }
                    },
                    {
                        "route": "/storage/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materials/",
                            "en": "https://help.terake.com/en/storage/materials/"
                        }
                    },
                    {
                        "route": "/vehiclebook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/materials/",
                            "en": "https://help.terake.com/en/vehiclebook/materials/"
                        }
                    }
                ]
            }
        },
        "/api/workunits": {
            "get": {
                "tags": [
                    "Materials"
                ],
                "summary": "Material collection",
                "description": "The materials the company may see (its own, the generic companies' and its sharing partners'), neither deleted nor archived, by name, at most 10000; /api/materials leaves out work units (category 5), /api/workunits lists only them. \"_amount\" is the stock of the company's own materials.",
                "externalDocs": {
                    "description": "Help: Workunits (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/workunits/"
                },
                "operationId": "get_api_workunits_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived materials and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Material (serializer groups material, owner, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Material11"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workunits",
                        "title": "Workunits",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workunits/",
                            "en": "https://help.terake.com/en/admin/main/workunits/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Materials"
                ],
                "summary": "Create or modify Material",
                "description": "Creates a Material of the company, or modifies the one an \"id\" (path, query or body) names; the body \"id\" must then equal it. A key the body leaves out leaves that field alone. On /api/materials also material_impact_data and seed_coating_data; on both material_config.",
                "externalDocs": {
                    "description": "Help: Workunits (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/workunits/"
                },
                "operationId": "post_api_workunits_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Material id; required for modification, leave it out to create",
                                        "type": "integer"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "category_name": {
                                        "type": "string"
                                    },
                                    "formula_n": {
                                        "type": "string"
                                    },
                                    "formula_p": {
                                        "type": "string"
                                    },
                                    "formula_k": {
                                        "type": "string"
                                    },
                                    "formula_s": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "batch_number": {
                                        "type": "string"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    },
                                    "is_coated_seed": {
                                        "type": "boolean"
                                    },
                                    "is_undersowing": {
                                        "type": "boolean"
                                    },
                                    "is_cover_crop": {
                                        "type": "boolean"
                                    },
                                    "is_material": {
                                        "type": "boolean"
                                    },
                                    "is_product": {
                                        "type": "boolean"
                                    },
                                    "is_coating_material": {
                                        "type": "boolean"
                                    },
                                    "cost_per_unit": {
                                        "type": "number"
                                    },
                                    "price_per_unit": {
                                        "type": "number"
                                    },
                                    "material_category": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "amount_category": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "calc_amount_category": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "crop": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "material_certificate": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "material_type": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "material_second_type": {
                                        "description": "{\"id\": ...}; kept only with material type 7",
                                        "type": "object"
                                    },
                                    "master_material": {
                                        "description": "{\"id\": ...}; kept only with material types 1, 6 and 100",
                                        "type": "object"
                                    },
                                    "material_impact_data": {
                                        "description": "year0_percent_n ... year2_percent_k",
                                        "type": "object"
                                    },
                                    "seed_coating_data": {
                                        "description": "{\"coating_material\": {\"id\": ...}, \"consumption_ratio_per_base_unit\": ...}",
                                        "type": "object"
                                    },
                                    "material_config": {
                                        "description": "click_amount, min_seconds_between_clicks, default_amount, default_ratio_per_unit",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Material (serializer groups material, material_all, owner, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Material12"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Material"
                    },
                    "404": {
                        "description": "Not found among the materials the company may see, or material 2"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workunits",
                        "title": "Workunits",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workunits/",
                            "en": "https://help.terake.com/en/admin/main/workunits/"
                        }
                    }
                ]
            }
        },
        "/api/workunits/{id}": {
            "get": {
                "tags": [
                    "Materials"
                ],
                "summary": "Get Material",
                "description": "Material by ID or UUID, with its stock as \"_amount\".",
                "externalDocs": {
                    "description": "Help: Workunits (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/workunits/"
                },
                "operationId": "get_api_workunits_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Material id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Material (serializer groups material_all, sharing, owner, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Material13"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found among the materials the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workunits",
                        "title": "Workunits",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workunits/",
                            "en": "https://help.terake.com/en/admin/main/workunits/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Materials"
                ],
                "summary": "Modify Material",
                "description": "Modifies a Material; the body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Workunits (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/workunits/"
                },
                "operationId": "put_api_workunits_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Material id; required for modification, leave it out to create",
                                        "type": "integer"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "category_name": {
                                        "type": "string"
                                    },
                                    "formula_n": {
                                        "type": "string"
                                    },
                                    "formula_p": {
                                        "type": "string"
                                    },
                                    "formula_k": {
                                        "type": "string"
                                    },
                                    "formula_s": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "batch_number": {
                                        "type": "string"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    },
                                    "is_coated_seed": {
                                        "type": "boolean"
                                    },
                                    "is_undersowing": {
                                        "type": "boolean"
                                    },
                                    "is_cover_crop": {
                                        "type": "boolean"
                                    },
                                    "is_material": {
                                        "type": "boolean"
                                    },
                                    "is_product": {
                                        "type": "boolean"
                                    },
                                    "is_coating_material": {
                                        "type": "boolean"
                                    },
                                    "cost_per_unit": {
                                        "type": "number"
                                    },
                                    "price_per_unit": {
                                        "type": "number"
                                    },
                                    "material_category": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "amount_category": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "calc_amount_category": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "crop": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "material_certificate": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "material_type": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "material_second_type": {
                                        "description": "{\"id\": ...}; kept only with material type 7",
                                        "type": "object"
                                    },
                                    "master_material": {
                                        "description": "{\"id\": ...}; kept only with material types 1, 6 and 100",
                                        "type": "object"
                                    },
                                    "material_impact_data": {
                                        "description": "year0_percent_n ... year2_percent_k",
                                        "type": "object"
                                    },
                                    "seed_coating_data": {
                                        "description": "{\"coating_material\": {\"id\": ...}, \"consumption_ratio_per_base_unit\": ...}",
                                        "type": "object"
                                    },
                                    "material_config": {
                                        "description": "click_amount, min_seconds_between_clicks, default_amount, default_ratio_per_unit",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Material (serializer groups material, material_all, owner, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Material12"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Material"
                    },
                    "404": {
                        "description": "Not found among the materials the company may see, or material 2"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workunits",
                        "title": "Workunits",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workunits/",
                            "en": "https://help.terake.com/en/admin/main/workunits/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Materials"
                ],
                "summary": "Delete Material",
                "description": "Deletes Material by ID or UUID (marks it deleted and archived). Returns the deleted Material.",
                "externalDocs": {
                    "description": "Help: Workunits (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/workunits/"
                },
                "operationId": "delete_api_workunits_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Material id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Material (serializer groups material_all, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Material14"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Material"
                    },
                    "404": {
                        "description": "Not found among the materials the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workunits",
                        "title": "Workunits",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workunits/",
                            "en": "https://help.terake.com/en/admin/main/workunits/"
                        }
                    }
                ]
            }
        },
        "/api/materials/{id}": {
            "get": {
                "tags": [
                    "Materials"
                ],
                "summary": "Get Material",
                "description": "Material by ID or UUID, with its stock as \"_amount\".",
                "externalDocs": {
                    "description": "Help: Materials (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/materials/"
                },
                "operationId": "get_api_materials_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Material id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Material (serializer groups material_all, sharing, owner, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Material13"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found among the materials the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/materials/",
                            "en": "https://help.terake.com/en/admin/main/materials/"
                        }
                    },
                    {
                        "route": "/fieldbook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/materials/",
                            "en": "https://help.terake.com/en/fieldbook/materials/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/reports/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/reports/production/",
                            "en": "https://help.terake.com/en/reports/production/"
                        }
                    },
                    {
                        "route": "/reports/telemetry-workobjects",
                        "title": "Telemetry workobjects report",
                        "help": {
                            "et": "https://help.terake.com/et/reports/telemetry-workobjects/",
                            "en": "https://help.terake.com/en/reports/telemetry-workobjects/"
                        }
                    },
                    {
                        "route": "/storage/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materials/",
                            "en": "https://help.terake.com/en/storage/materials/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/storage/production/",
                            "en": "https://help.terake.com/en/storage/production/"
                        }
                    },
                    {
                        "route": "/terake/report",
                        "title": "Report view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/report/",
                            "en": "https://help.terake.com/en/terake/report/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/materials/",
                            "en": "https://help.terake.com/en/vehiclebook/materials/"
                        }
                    },
                    {
                        "route": "/vehiclebook/messages",
                        "title": "Messages for drivers",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/messages/",
                            "en": "https://help.terake.com/en/vehiclebook/messages/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Materials"
                ],
                "summary": "Modify Material",
                "description": "Modifies a Material; the body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Materials (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/materials/"
                },
                "operationId": "put_api_materials_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Material id; required for modification, leave it out to create",
                                        "type": "integer"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "category_name": {
                                        "type": "string"
                                    },
                                    "formula_n": {
                                        "type": "string"
                                    },
                                    "formula_p": {
                                        "type": "string"
                                    },
                                    "formula_k": {
                                        "type": "string"
                                    },
                                    "formula_s": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "batch_number": {
                                        "type": "string"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    },
                                    "is_coated_seed": {
                                        "type": "boolean"
                                    },
                                    "is_undersowing": {
                                        "type": "boolean"
                                    },
                                    "is_cover_crop": {
                                        "type": "boolean"
                                    },
                                    "is_material": {
                                        "type": "boolean"
                                    },
                                    "is_product": {
                                        "type": "boolean"
                                    },
                                    "is_coating_material": {
                                        "type": "boolean"
                                    },
                                    "cost_per_unit": {
                                        "type": "number"
                                    },
                                    "price_per_unit": {
                                        "type": "number"
                                    },
                                    "material_category": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "amount_category": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "calc_amount_category": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "crop": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "material_certificate": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "material_type": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "material_second_type": {
                                        "description": "{\"id\": ...}; kept only with material type 7",
                                        "type": "object"
                                    },
                                    "master_material": {
                                        "description": "{\"id\": ...}; kept only with material types 1, 6 and 100",
                                        "type": "object"
                                    },
                                    "material_impact_data": {
                                        "description": "year0_percent_n ... year2_percent_k",
                                        "type": "object"
                                    },
                                    "seed_coating_data": {
                                        "description": "{\"coating_material\": {\"id\": ...}, \"consumption_ratio_per_base_unit\": ...}",
                                        "type": "object"
                                    },
                                    "material_config": {
                                        "description": "click_amount, min_seconds_between_clicks, default_amount, default_ratio_per_unit",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Material (serializer groups material, material_all, owner, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Material12"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Material"
                    },
                    "404": {
                        "description": "Not found among the materials the company may see, or material 2"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/materials/",
                            "en": "https://help.terake.com/en/admin/main/materials/"
                        }
                    },
                    {
                        "route": "/fieldbook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/materials/",
                            "en": "https://help.terake.com/en/fieldbook/materials/"
                        }
                    },
                    {
                        "route": "/storage/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materials/",
                            "en": "https://help.terake.com/en/storage/materials/"
                        }
                    },
                    {
                        "route": "/vehiclebook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/materials/",
                            "en": "https://help.terake.com/en/vehiclebook/materials/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Materials"
                ],
                "summary": "Delete Material",
                "description": "Deletes Material by ID or UUID (marks it deleted and archived). Returns the deleted Material.",
                "externalDocs": {
                    "description": "Help: Materials (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/materials/"
                },
                "operationId": "delete_api_materials_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Material id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Material (serializer groups material_all, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Material14"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Material"
                    },
                    "404": {
                        "description": "Not found among the materials the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/materials/",
                            "en": "https://help.terake.com/en/admin/main/materials/"
                        }
                    },
                    {
                        "route": "/fieldbook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/materials/",
                            "en": "https://help.terake.com/en/fieldbook/materials/"
                        }
                    },
                    {
                        "route": "/storage/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materials/",
                            "en": "https://help.terake.com/en/storage/materials/"
                        }
                    },
                    {
                        "route": "/vehiclebook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/materials/",
                            "en": "https://help.terake.com/en/vehiclebook/materials/"
                        }
                    }
                ]
            }
        },
        "/api/materials/{id}/material_composition": {
            "get": {
                "tags": [
                    "Materials"
                ],
                "summary": "Harvest Material composition",
                "description": "The silage transports of the material from the company's fields, neither deleted nor archived, summed by the fields' crop of the silage's crop period (id 0 and name \"-\" without one), largest first: [{id, name, amount}].",
                "externalDocs": {
                    "description": "Help: Materials (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/materials/"
                },
                "operationId": "get_api_materials_get_material_composition",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Material id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of {id, name, amount}"
                    },
                    "404": {
                        "description": "Not found among the materials the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/materials/",
                            "en": "https://help.terake.com/en/admin/main/materials/"
                        }
                    },
                    {
                        "route": "/fieldbook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/materials/",
                            "en": "https://help.terake.com/en/fieldbook/materials/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/reports/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/reports/production/",
                            "en": "https://help.terake.com/en/reports/production/"
                        }
                    },
                    {
                        "route": "/reports/telemetry-workobjects",
                        "title": "Telemetry workobjects report",
                        "help": {
                            "et": "https://help.terake.com/et/reports/telemetry-workobjects/",
                            "en": "https://help.terake.com/en/reports/telemetry-workobjects/"
                        }
                    },
                    {
                        "route": "/storage/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materials/",
                            "en": "https://help.terake.com/en/storage/materials/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/storage/production/",
                            "en": "https://help.terake.com/en/storage/production/"
                        }
                    },
                    {
                        "route": "/terake/report",
                        "title": "Report view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/report/",
                            "en": "https://help.terake.com/en/terake/report/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/materials/",
                            "en": "https://help.terake.com/en/vehiclebook/materials/"
                        }
                    },
                    {
                        "route": "/vehiclebook/messages",
                        "title": "Messages for drivers",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/messages/",
                            "en": "https://help.terake.com/en/vehiclebook/messages/"
                        }
                    }
                ]
            }
        },
        "/api/materials/{id}/harvest_sources": {
            "get": {
                "tags": [
                    "Materials"
                ],
                "summary": "Harvest Material sources",
                "description": "The silage transports of the material from the company's fields, neither deleted nor archived, summed by field, largest first: [{id, name, amount}].",
                "externalDocs": {
                    "description": "Help: Materials (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/materials/"
                },
                "operationId": "get_api_materials_get_harvest_sources",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Material id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of {id, name, amount}"
                    },
                    "404": {
                        "description": "Not found among the materials the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/materials/",
                            "en": "https://help.terake.com/en/admin/main/materials/"
                        }
                    },
                    {
                        "route": "/fieldbook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/materials/",
                            "en": "https://help.terake.com/en/fieldbook/materials/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/reports/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/reports/production/",
                            "en": "https://help.terake.com/en/reports/production/"
                        }
                    },
                    {
                        "route": "/reports/telemetry-workobjects",
                        "title": "Telemetry workobjects report",
                        "help": {
                            "et": "https://help.terake.com/et/reports/telemetry-workobjects/",
                            "en": "https://help.terake.com/en/reports/telemetry-workobjects/"
                        }
                    },
                    {
                        "route": "/storage/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materials/",
                            "en": "https://help.terake.com/en/storage/materials/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/storage/production/",
                            "en": "https://help.terake.com/en/storage/production/"
                        }
                    },
                    {
                        "route": "/terake/report",
                        "title": "Report view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/report/",
                            "en": "https://help.terake.com/en/terake/report/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/materials/",
                            "en": "https://help.terake.com/en/vehiclebook/materials/"
                        }
                    },
                    {
                        "route": "/vehiclebook/messages",
                        "title": "Messages for drivers",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/messages/",
                            "en": "https://help.terake.com/en/vehiclebook/messages/"
                        }
                    }
                ]
            }
        },
        "/api/material-categories": {
            "get": {
                "tags": [
                    "MaterialCategories"
                ],
                "summary": "MaterialCategory collection",
                "description": "The categories the company may see (its own, the generic companies' and its sharing partners'), neither deleted nor archived, by name, at most 10000.",
                "externalDocs": {
                    "description": "Help: Material types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/material_categories/"
                },
                "operationId": "get_api_material_categories_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived categories and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of MaterialCategory (serializer groups archive, material_category_all, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/MaterialCategory8"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/material_categories",
                        "title": "Material types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/material_categories/",
                            "en": "https://help.terake.com/en/admin/main/material_categories/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "MaterialCategories"
                ],
                "summary": "Create MaterialCategory",
                "description": "Creates a MaterialCategory of the company, or modifies the one of the company the body names by \"id\" or \"uuid\". A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Material types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/material_categories/"
                },
                "operationId": "post_api_material_categories_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "description": "Name, also written to short_name",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The MaterialCategory"
                    },
                    "403": {
                        "description": "The body names another company's category"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/material_categories",
                        "title": "Material types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/material_categories/",
                            "en": "https://help.terake.com/en/admin/main/material_categories/"
                        }
                    }
                ]
            }
        },
        "/api/material-categories/{id}": {
            "get": {
                "tags": [
                    "MaterialCategories"
                ],
                "summary": "Get MaterialCategory",
                "description": "MaterialCategory by ID or UUID.",
                "externalDocs": {
                    "description": "Help: Material types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/material_categories/"
                },
                "operationId": "get_api_material_categories_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "MaterialCategory id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The MaterialCategory (serializer groups archive, material_category_all, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MaterialCategory8"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found among the categories the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/material_categories",
                        "title": "Material types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/material_categories/",
                            "en": "https://help.terake.com/en/admin/main/material_categories/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "MaterialCategories"
                ],
                "summary": "Modify MaterialCategory",
                "description": "Modifies a MaterialCategory. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Material types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/material_categories/"
                },
                "operationId": "put_api_material_categories_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "MaterialCategory id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    },
                                    "name": {
                                        "description": "Name, also written to short_name",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The MaterialCategory"
                    },
                    "403": {
                        "description": "The caller may not modify this MaterialCategory"
                    },
                    "404": {
                        "description": "Not found among the categories the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/material_categories",
                        "title": "Material types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/material_categories/",
                            "en": "https://help.terake.com/en/admin/main/material_categories/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "MaterialCategories"
                ],
                "summary": "Delete MaterialCategory",
                "description": "Deletes MaterialCategory by ID or UUID (marks it deleted and archived). Returns the deleted MaterialCategory.",
                "externalDocs": {
                    "description": "Help: Material types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/material_categories/"
                },
                "operationId": "delete_api_material_categories_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "MaterialCategory id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted MaterialCategory"
                    },
                    "403": {
                        "description": "The caller may not modify this MaterialCategory"
                    },
                    "404": {
                        "description": "Not found among the categories the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/material_categories",
                        "title": "Material types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/material_categories/",
                            "en": "https://help.terake.com/en/admin/main/material_categories/"
                        }
                    }
                ]
            }
        },
        "/api/material-categories/{id}/togglearchive": {
            "put": {
                "tags": [
                    "MaterialCategories"
                ],
                "summary": "Toggle MaterialCategory archive",
                "description": "The owner flips the category's own archived flag; any other company archives it for itself alone.",
                "externalDocs": {
                    "description": "Help: Material types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/material_categories/"
                },
                "operationId": "put_api_material_categories_put_togglearchive",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "MaterialCategory id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The MaterialCategory"
                    },
                    "404": {
                        "description": "Not found among the categories the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/material_categories",
                        "title": "Material types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/material_categories/",
                            "en": "https://help.terake.com/en/admin/main/material_categories/"
                        }
                    }
                ]
            }
        },
        "/api/materials/{material_id}/inventory/{material_inventory_id}": {
            "get": {
                "tags": [
                    "MaterialInventory"
                ],
                "summary": "Get MaterialInventory",
                "description": "One inventory row of one of the company's materials.",
                "operationId": "get_api_materials_inventory_get",
                "parameters": [
                    {
                        "name": "material_id",
                        "in": "path",
                        "description": "Material id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "material_inventory_id",
                        "in": "path",
                        "description": "MaterialInventory id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The MaterialInventory (serializer groups material_inventory, owner, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MaterialInventory"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not a material of the company, or not a row of that material"
                    }
                }
            },
            "put": {
                "tags": [
                    "MaterialInventory"
                ],
                "summary": "Change MaterialInventory",
                "description": "Changes the count in the path.",
                "operationId": "put_api_materials_inventory_put",
                "parameters": [
                    {
                        "name": "material_id",
                        "in": "path",
                        "description": "Material id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "material_inventory_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "material_inventory_id": {
                                        "description": "POST: a count of the material to change (on PUT it is the path)",
                                        "type": "integer"
                                    },
                                    "amount": {
                                        "description": "Counted amount",
                                        "type": "number"
                                    },
                                    "storage": {
                                        "description": "{\"id\": ...}; the \"Unknown\" storage (1) without one",
                                        "type": "object"
                                    },
                                    "document_type": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "inventory_time": {
                                        "description": "Day of the count, for example 2026-08-28 (midnight, Europe/Helsinki); today without one",
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The MaterialInventory (serializer groups material_inventory, owner, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MaterialInventory"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not a material of the company, or not a row of that material, or an unknown storage or document type"
                    }
                }
            },
            "delete": {
                "tags": [
                    "MaterialInventory"
                ],
                "summary": "Delete MaterialInventory",
                "description": "Removes the count and recalculates the caches from the count before it; the first count of the material in a storage is kept. Answers [].",
                "operationId": "delete_api_materials_inventory_delete",
                "parameters": [
                    {
                        "name": "material_id",
                        "in": "path",
                        "description": "Material id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "material_inventory_id",
                        "in": "path",
                        "description": "MaterialInventory id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "[]"
                    },
                    "404": {
                        "description": "Not a material of the company, or not a row of that material"
                    }
                }
            }
        },
        "/api/materials/{material_id}/inventory": {
            "get": {
                "tags": [
                    "MaterialInventory"
                ],
                "summary": "MaterialInventory of a material",
                "description": "The material's stock per storage from the first day of the month four months ago: start and end balances and the movements in between.",
                "externalDocs": {
                    "description": "Help: Materials (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/materials/"
                },
                "operationId": "get_api_materials_inventory_list_get",
                "parameters": [
                    {
                        "name": "material_id",
                        "in": "path",
                        "description": "Material id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The balances and movements"
                    },
                    "404": {
                        "description": "Not a material of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/materials/",
                            "en": "https://help.terake.com/en/admin/main/materials/"
                        }
                    },
                    {
                        "route": "/fieldbook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/materials/",
                            "en": "https://help.terake.com/en/fieldbook/materials/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/reports/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/reports/production/",
                            "en": "https://help.terake.com/en/reports/production/"
                        }
                    },
                    {
                        "route": "/reports/telemetry-workobjects",
                        "title": "Telemetry workobjects report",
                        "help": {
                            "et": "https://help.terake.com/et/reports/telemetry-workobjects/",
                            "en": "https://help.terake.com/en/reports/telemetry-workobjects/"
                        }
                    },
                    {
                        "route": "/storage/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materials/",
                            "en": "https://help.terake.com/en/storage/materials/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/storage/production/",
                            "en": "https://help.terake.com/en/storage/production/"
                        }
                    },
                    {
                        "route": "/terake/report",
                        "title": "Report view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/report/",
                            "en": "https://help.terake.com/en/terake/report/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/materials/",
                            "en": "https://help.terake.com/en/vehiclebook/materials/"
                        }
                    },
                    {
                        "route": "/vehiclebook/messages",
                        "title": "Messages for drivers",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/messages/",
                            "en": "https://help.terake.com/en/vehiclebook/messages/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "MaterialInventory"
                ],
                "summary": "Save MaterialInventory",
                "description": "A counted stock of the material in a storage on a day (one count a day: the count of that day is changed, and a changed count removes the other rows of its new day). The caches of the material are recalculated.",
                "externalDocs": {
                    "description": "Help: Materials (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/materials/"
                },
                "operationId": "post_api_materials_inventory_post",
                "parameters": [
                    {
                        "name": "material_id",
                        "in": "path",
                        "description": "Material id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "material_inventory_id": {
                                        "description": "POST: a count of the material to change (on PUT it is the path)",
                                        "type": "integer"
                                    },
                                    "amount": {
                                        "description": "Counted amount",
                                        "type": "number"
                                    },
                                    "storage": {
                                        "description": "{\"id\": ...}; the \"Unknown\" storage (1) without one",
                                        "type": "object"
                                    },
                                    "document_type": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "inventory_time": {
                                        "description": "Day of the count, for example 2026-08-28 (midnight, Europe/Helsinki); today without one",
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The MaterialInventory (serializer groups material_inventory, owner, baseattribute, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MaterialInventory"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not a material of the company, or not a row of that material, or an unknown storage or document type"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/materials/",
                            "en": "https://help.terake.com/en/admin/main/materials/"
                        }
                    },
                    {
                        "route": "/fieldbook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/materials/",
                            "en": "https://help.terake.com/en/fieldbook/materials/"
                        }
                    },
                    {
                        "route": "/storage/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materials/",
                            "en": "https://help.terake.com/en/storage/materials/"
                        }
                    },
                    {
                        "route": "/vehiclebook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/materials/",
                            "en": "https://help.terake.com/en/vehiclebook/materials/"
                        }
                    }
                ]
            }
        },
        "/api/storage/{storage_id}/inventory": {
            "get": {
                "tags": [
                    "MaterialInventory"
                ],
                "summary": "Storage inventory",
                "description": "The current stock (last cache) of every material in the storage, by material name: [{id, material {id, name, amount_category {shortname_slug}}, amount, inventory_time}].",
                "operationId": "get_api_storage_inventory_list_get",
                "parameters": [
                    {
                        "name": "storage_id",
                        "in": "path",
                        "description": "Workobject id used as the storage",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of stock rows"
                    },
                    "404": {
                        "description": "Not a field or storage the company may see"
                    }
                }
            }
        },
        "/api/materials/{parent_id}/lifespan/{id}": {
            "get": {
                "tags": [
                    "Materials"
                ],
                "summary": "Get Material Lifespan Object",
                "operationId": "get_api_materials_get_lifespan",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "description": "Material ID",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Material Lifespan ID",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The MaterialLifespan (serializer groups material, material_all, baseattribute), null when the material has no such lifespan",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MaterialLifespan4"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Material not found"
                    }
                }
            },
            "put": {
                "tags": [
                    "Materials"
                ],
                "summary": "Creates or modifies a Material lifespan assignment",
                "operationId": "put_api_materials_put_lifespan",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "delete": {
                "tags": [
                    "Materials"
                ],
                "summary": "Removes a lifespan assignment from a Material",
                "operationId": "delete_api_materials_delete_lifespan",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "description": "Material ID",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Material Lifespan ID",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ \"id\": N, \"is_deleted\": true }"
                    },
                    "403": {
                        "description": "The caller may not modify the material"
                    },
                    "404": {
                        "description": "Material not found"
                    },
                    "500": {
                        "description": "The material has no such lifespan"
                    }
                }
            }
        },
        "/api/materials/{parent_id}/lifespan": {
            "post": {
                "tags": [
                    "Materials"
                ],
                "summary": "Assign Lifespan to Material",
                "description": "Creates a lifespan assignment, or (with an id in the path, query or body) modifies that one.",
                "externalDocs": {
                    "description": "Help: Materials (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/materials/"
                },
                "operationId": "post_api_materials_post_lifespan",
                "parameters": [
                    {
                        "name": "parent_id",
                        "in": "path",
                        "description": "Material ID",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "MaterialLifespan id; only when modifying an existing record",
                                        "type": "integer"
                                    },
                                    "lifespan_type": {
                                        "description": "LifespanType { \"id\": N }",
                                        "type": "object"
                                    },
                                    "initial_value": {
                                        "type": "integer"
                                    },
                                    "warning_value": {
                                        "type": "integer"
                                    },
                                    "end_value": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The MaterialLifespan (serializer groups material, material_all, baseattribute), null when the id names no lifespan of the material",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MaterialLifespan4"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the material"
                    },
                    "404": {
                        "description": "Material not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/materials/",
                            "en": "https://help.terake.com/en/admin/main/materials/"
                        }
                    },
                    {
                        "route": "/fieldbook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/materials/",
                            "en": "https://help.terake.com/en/fieldbook/materials/"
                        }
                    },
                    {
                        "route": "/storage/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materials/",
                            "en": "https://help.terake.com/en/storage/materials/"
                        }
                    },
                    {
                        "route": "/vehiclebook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/materials/",
                            "en": "https://help.terake.com/en/vehiclebook/materials/"
                        }
                    }
                ]
            }
        },
        "/api/mobilefolderslots": {
            "get": {
                "tags": [
                    "Mobile folders"
                ],
                "summary": "MobileFolderSlot collection",
                "description": "The caller's company's mobile folder slots that are neither deleted nor archived, by name, at most 10000.",
                "externalDocs": {
                    "description": "Help: Mobile app folders (beta) (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/mobilefolderslots/"
                },
                "operationId": "get_api_mobilefolderslots_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived slots and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of MobileFolderSlot (serializer groups default, mobilefolderslots)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/MobileFolderSlot"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/mobilefolderslots",
                        "title": "Mobile app folders (beta)",
                        "help": {
                            "et": "https://help.terake.com/et/admin/mobilefolderslots/",
                            "en": "https://help.terake.com/en/admin/mobilefolderslots/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Mobile folders"
                ],
                "summary": "Create MobileFolderSlot",
                "description": "Creates a MobileFolderSlot, or modifies the one the body names by \"id\" or \"uuid\". A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Mobile app folders (beta) (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/mobilefolderslots/"
                },
                "operationId": "post_api_mobilefolderslots_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "description": "Folder name; required by the table",
                                        "type": "string"
                                    },
                                    "slot_number": {
                                        "description": "Slot position in the mobile app",
                                        "type": "integer"
                                    },
                                    "mobile_folder_type": {
                                        "description": "{id} of a mobile folder type; null clears it",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The MobileFolderSlot (serializer groups default, mobilefolderslots)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MobileFolderSlot"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/mobilefolderslots",
                        "title": "Mobile app folders (beta)",
                        "help": {
                            "et": "https://help.terake.com/et/admin/mobilefolderslots/",
                            "en": "https://help.terake.com/en/admin/mobilefolderslots/"
                        }
                    }
                ]
            }
        },
        "/api/mobilefolderslots/{id}": {
            "get": {
                "tags": [
                    "Mobile folders"
                ],
                "summary": "Get MobileFolderSlot",
                "description": "Returns one MobileFolderSlot by id or uuid.",
                "externalDocs": {
                    "description": "Help: Mobile app folders (beta) (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/mobilefolderslots/"
                },
                "operationId": "get_api_mobilefolderslots_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "MobileFolderSlot id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The MobileFolderSlot (serializer groups default, mobilefolderslots)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MobileFolderSlot"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/mobilefolderslots",
                        "title": "Mobile app folders (beta)",
                        "help": {
                            "et": "https://help.terake.com/et/admin/mobilefolderslots/",
                            "en": "https://help.terake.com/en/admin/mobilefolderslots/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Mobile folders"
                ],
                "summary": "Modify MobileFolderSlot",
                "description": "Modifies a MobileFolderSlot. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Mobile app folders (beta) (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/mobilefolderslots/"
                },
                "operationId": "put_api_mobilefolderslots_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "MobileFolderSlot id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "slot_number": {
                                        "description": "Slot position in the mobile app",
                                        "type": "integer"
                                    },
                                    "mobile_folder_type": {
                                        "description": "{id} of a mobile folder type; null clears it",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The MobileFolderSlot (serializer groups default, mobilefolderslots)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MobileFolderSlot"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this MobileFolderSlot"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/mobilefolderslots",
                        "title": "Mobile app folders (beta)",
                        "help": {
                            "et": "https://help.terake.com/et/admin/mobilefolderslots/",
                            "en": "https://help.terake.com/en/admin/mobilefolderslots/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Mobile folders"
                ],
                "summary": "Delete MobileFolderSlot",
                "description": "Deletes MobileFolderSlot by ID or UUID (marks it deleted and archived). Returns the deleted MobileFolderSlot.",
                "externalDocs": {
                    "description": "Help: Mobile app folders (beta) (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/mobilefolderslots/"
                },
                "operationId": "delete_api_mobilefolderslots_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "MobileFolderSlot id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted MobileFolderSlot (serializer groups default, mobilefolderslots)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/MobileFolderSlot"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this MobileFolderSlot"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/mobilefolderslots",
                        "title": "Mobile app folders (beta)",
                        "help": {
                            "et": "https://help.terake.com/et/admin/mobilefolderslots/",
                            "en": "https://help.terake.com/en/admin/mobilefolderslots/"
                        }
                    }
                ]
            }
        },
        "/api/modificationlog/{entity_type}/{id}": {
            "get": {
                "tags": [
                    "Settings"
                ],
                "summary": "List Entity modifications",
                "description": "List Entity modifications: at most 100 log rows of the object, without the archived ones (changes made by system workers). An unknown type gives [].",
                "operationId": "get_api_modification_log_list",
                "parameters": [
                    {
                        "name": "entity_type",
                        "in": "path",
                        "description": "Terake object type code (worker, workdone, facility, agrifield, customer, ...)",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the object",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of ModificationLog (serializer group realtime)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/ModificationLog"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/multiplan/{resource_type}": {
            "get": {
                "tags": [
                    "Plans"
                ],
                "summary": "Plan rows for a period grouped by resource type",
                "description": "Plan items of the company overlapping the period, as plan_data { Ymd: { resource id (0 without one): [Planitem] } },\nthe days of the period (dates_array, at most 51: Ymd, dayname_trans_key, date_display) and the resources\n(classificator: workers, main or secondary facilities, customers or work objects). An unknown resource type is worker.",
                "externalDocs": {
                    "description": "Help: Planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/multiplan/"
                },
                "operationId": "get_api_multiplan_resource",
                "parameters": [
                    {
                        "name": "resource_type",
                        "in": "path",
                        "description": "worker, main_facility, secondary_facility, workobject or customer; on /api/multiplan/data a query parameter (default worker)",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d. Defaults to the first day of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, the whole day included. Defaults to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ plan_data, dates_array, classificator } (serializer groups classificator, default, planitem)"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Plans"
                ],
                "summary": "Edit multiple Planitem",
                "description": "The company's plan items named in selected_planitem_ids keep their days and take the template's clock\ntimes and fields; the grid's own resource is not taken from the template.",
                "externalDocs": {
                    "description": "Help: Planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/multiplan/"
                },
                "operationId": "put_api_multiplan_edit_by_resource",
                "parameters": [
                    {
                        "name": "resource_type",
                        "in": "path",
                        "description": "worker, main_facility, secondary_facility, workobject or customer (default worker)",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "selected_planitem_ids": {
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "editable": {
                                        "description": "The plan item template.",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The changed Planitems (serializer groups default, planitem)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Planitem3"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "A plan item is not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Plans"
                ],
                "summary": "Add multiple Planitem",
                "description": "One plan item per resource and selected date, from the template in editable (multidate_start_clock and\nmultidate_stop_clock give the clock times; a stop clock earlier than the start ends the next day).",
                "externalDocs": {
                    "description": "Help: Planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/multiplan/"
                },
                "operationId": "post_api_multiplan_add_resource",
                "parameters": [
                    {
                        "name": "resource_type",
                        "in": "path",
                        "description": "worker, main_facility, secondary_facility, workobject or customer (default worker)",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "(?!edit$)[^/]+"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "editable": {
                                        "description": "The plan item template applied to every selected slot.",
                                        "type": "object"
                                    },
                                    "resource_dates": {
                                        "description": "Dates (Y-m-d) selected per resource, keyed by resource id.",
                                        "type": "object"
                                    },
                                    "workers_dates": {
                                        "description": "Dates selected per resource; used instead of resource_dates when present.",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ added: [ids] }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    }
                ]
            }
        },
        "/api/notification-read/{id}": {
            "post": {
                "tags": [
                    "Messages"
                ],
                "summary": "Marks a notification as read",
                "externalDocs": {
                    "description": "Help: Messages (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/messages/"
                },
                "operationId": "post_api_notification_read_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Notification id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Notification (serializer groups default, message), or the string \"Not found\" when it is not one of the caller's",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Notification2"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/messages",
                        "title": "Messages",
                        "help": {
                            "et": "https://help.terake.com/et/my/messages/",
                            "en": "https://help.terake.com/en/my/messages/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/notifications_unread": {
            "get": {
                "tags": [
                    "Messages"
                ],
                "summary": "Unread notifications for the calling worker, newest first, capped at 99",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (calendar view) (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkview/"
                },
                "operationId": "get_api_notification_unread_list_get",
                "responses": {
                    "200": {
                        "description": "List of Notifications (serializer group message)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Notification"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkview",
                        "title": "Fieldwork planning (calendar view)",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkview/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkview/"
                        }
                    }
                ]
            }
        },
        "/api/notifications": {
            "get": {
                "tags": [
                    "Messages"
                ],
                "summary": "Notifications for the calling worker, paged",
                "externalDocs": {
                    "description": "Help: Messages (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/messages/"
                },
                "operationId": "get_api_notification_list_old_get",
                "parameters": [
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Notifications per page. Defaults to 500",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ pagination: { total, per_page, current_page, from, to }, collection: Notifications (serializer group message) }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/messages",
                        "title": "Messages",
                        "help": {
                            "et": "https://help.terake.com/et/my/messages/",
                            "en": "https://help.terake.com/en/my/messages/"
                        }
                    }
                ]
            }
        },
        "/api/notifications/{current_page}": {
            "get": {
                "tags": [
                    "Messages"
                ],
                "summary": "Notifications for the calling worker, paged",
                "externalDocs": {
                    "description": "Help: Messages (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/messages/"
                },
                "operationId": "get_api_notification_list_get",
                "parameters": [
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Notifications per page. Defaults to 500",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "current_page",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ pagination: { total, per_page, current_page, from, to }, collection: Notifications (serializer group message) }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/messages",
                        "title": "Messages",
                        "help": {
                            "et": "https://help.terake.com/et/my/messages/",
                            "en": "https://help.terake.com/en/my/messages/"
                        }
                    }
                ]
            }
        },
        "/api/planreportsync/{id}": {
            "get": {
                "tags": [
                    "Plans"
                ],
                "summary": "Planitem by ID",
                "description": "Returns Planitem by ID: the company's own, or a partner's that names the company as consumer; an empty body (200) when there is none or it is deleted. /api/planreportsync/{id} returns the plan report rows of the item instead.",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "get_api_planreportsync_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Planitem id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Planitem (serializer groups default, planitem, material_all, workdone, planitemlist, owner, auditcolumns), an empty body, or plan report rows",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Planitem11"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/planreport/{id}": {
            "get": {
                "tags": [
                    "Plans"
                ],
                "summary": "Planitem by ID",
                "description": "Returns Planitem by ID: the company's own, or a partner's that names the company as consumer; an empty body (200) when there is none or it is deleted. /api/planreportsync/{id} returns the plan report rows of the item instead.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "get_api_planreport_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Planitem id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Planitem (serializer groups default, planitem, material_all, workdone, planitemlist, owner, auditcolumns), an empty body, or plan report rows",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Planitem11"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    }
                ],
                "x-alias-of": "get_api_plans_get"
            },
            "put": {
                "tags": [
                    "Plans"
                ],
                "summary": "Creates or modifies a Planitem. Planitem subtypes, set through roster_type, are Task (id 8,\nthe common case, with planned start and stop time), Todo (id 12, no planned stop time),\nTeamwork (id 18) and Groupwork (id 19).",
                "description": "The same operation also answers at `POST /api/planreport/{id}`.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "put_api_planreport_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Plans"
                ],
                "summary": "Creates or modifies a Planitem",
                "description": "Creates or modifies a Planitem. Planitem subtypes, set through roster_type, are Task (id 8, the common case, with planned start and stop time), Todo (id 12, no planned stop time), Teamwork (id 18) and Groupwork (id 19).\n\nOne plan item is made per date (use_multidate), worker, agrifield and main facility given. Returns an array of Planitems; the /api/planreport routes return plan report rows instead.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "post_api_planreport_post_one",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Planitem id. Only when modifying an existing record; leave it out to create a new one.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "drag_n_drop_resource",
                        "in": "query",
                        "description": "Resource the item was dropped onto in the planner - worker, agrifield or main_facility.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "based_on_entity_id",
                        "in": "query",
                        "description": "Existing plan item the new one is copied from.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "use_multidate": {
                                        "description": "Set to 1 to create one plan item per date in multidate_dates instead of a single item.",
                                        "type": "boolean"
                                    },
                                    "multidate_dates": {
                                        "description": "Dates to create plan items for. Read only when use_multidate is set.",
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "format": "date"
                                        }
                                    },
                                    "multidate_start_clock": {
                                        "description": "Start clock as HH:MM, applied to every date in multidate_dates. When only one of the start and stop clocks is given on creation, both get that clock.",
                                        "type": "string"
                                    },
                                    "multidate_stop_clock": {
                                        "description": "Stop clock as HH:MM, applied to every date in multidate_dates.",
                                        "type": "string"
                                    },
                                    "planned_start_time": {
                                        "description": "Planned start of the work, for example 2026-08-28 13:30:00. An empty value stores the current time, or the planned end when a new item is created with only an end. Ignored when use_multidate is set.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "planned_stop_time": {
                                        "description": "Planned end of the work. A planned start later than the end is set to the end. When empty, the item is created as a Todo: roster_type is set to { \"id\": 12 } regardless of what was sent. The exception is a new item sent with roster_type { \"id\": 8 } and a planned start: its end is set to the start, so the duration is 0. Ignored when use_multidate is set.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "worker_ids": {
                                        "description": "Creates one plan item per worker. Takes precedence over worker.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "worker": {
                                        "description": "Worker as { id: N }, or an array of them",
                                        "type": "object"
                                    },
                                    "agrifield": {
                                        "description": "Agrifield as { id: N }, or an array of them",
                                        "type": "object"
                                    },
                                    "main_facility": {
                                        "description": "Facility as { id: N }, or an array of them",
                                        "type": "object"
                                    },
                                    "material_planned_usages": {
                                        "description": "Planned material usage ({ material: {id}, storage: {id}, amount, ratio_per_hectare }). Applied on create only.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "fault_planitem": {
                                        "description": "Links the plan item to a fault item: { faultitem: { id } }. Read only on POST /api/plans.",
                                        "type": "object"
                                    },
                                    "inspection_planitem": {
                                        "description": "Links the plan item to an inspection case: { inspection_case: { id } }. Read only on POST /api/plans.",
                                        "type": "object"
                                    },
                                    "split_to_days": {
                                        "description": "Splits a plan item spanning several days into one item per day.",
                                        "type": "boolean"
                                    },
                                    "roster_type": {
                                        "description": "Planitem subtype. Default is { \"id\": 8 }.",
                                        "type": "object"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Array of Planitems (serializer groups planitem, calendaritem, material_all, planitemlist, owner, auditcolumns), or plan report rows",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Planitem12"
                                    }
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the plan item (or the one it is based on)"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    }
                ],
                "x-alias-of": "put_api_planreport_put"
            },
            "delete": {
                "tags": [
                    "Plans"
                ],
                "summary": "Delete Planitem by ID or UUID",
                "description": "Deletes Planitem by ID or UUID (a soft delete). Its fault and inspection links and planned material usages are removed, and it leaves its agrifield work and plan group. Returns the deleted Planitem.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "delete_api_planreport_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Planitem id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Planitem (serializer groups planitem, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Planitem13"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Planitem"
                    },
                    "404": {
                        "description": "Not found among the caller's company and its partners"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    }
                ],
                "x-alias-of": "delete_api_plans_delete"
            }
        },
        "/api/plans/{id}": {
            "get": {
                "tags": [
                    "Plans"
                ],
                "summary": "Planitem by ID",
                "description": "Returns Planitem by ID: the company's own, or a partner's that names the company as consumer; an empty body (200) when there is none or it is deleted. /api/planreportsync/{id} returns the plan report rows of the item instead.\n\nThe same operation also answers at `GET /api/planreport/{id}`.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "get_api_plans_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Planitem id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Planitem (serializer groups default, planitem, material_all, workdone, planitemlist, owner, auditcolumns), an empty body, or plan report rows",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Planitem11"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Plans"
                ],
                "summary": "Creates or modifies a Planitem. Planitem subtypes, set through roster_type, are Task (id 8,\nthe common case, with planned start and stop time), Todo (id 12, no planned stop time),\nTeamwork (id 18) and Groupwork (id 19).",
                "description": "The same operation also answers at `POST /api/plans/{id}`.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "put_api_plans_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Plans"
                ],
                "summary": "Creates or modifies a Planitem",
                "description": "Creates or modifies a Planitem. Planitem subtypes, set through roster_type, are Task (id 8, the common case, with planned start and stop time), Todo (id 12, no planned stop time), Teamwork (id 18) and Groupwork (id 19).\n\nOne plan item is made per date (use_multidate), worker, agrifield and main facility given. Returns an array of Planitems; the /api/planreport routes return plan report rows instead.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "post_api_plans_post_new",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Planitem id. Only when modifying an existing record; leave it out to create a new one.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "drag_n_drop_resource",
                        "in": "query",
                        "description": "Resource the item was dropped onto in the planner - worker, agrifield or main_facility.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "based_on_entity_id",
                        "in": "query",
                        "description": "Existing plan item the new one is copied from.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "use_multidate": {
                                        "description": "Set to 1 to create one plan item per date in multidate_dates instead of a single item.",
                                        "type": "boolean"
                                    },
                                    "multidate_dates": {
                                        "description": "Dates to create plan items for. Read only when use_multidate is set.",
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "format": "date"
                                        }
                                    },
                                    "multidate_start_clock": {
                                        "description": "Start clock as HH:MM, applied to every date in multidate_dates. When only one of the start and stop clocks is given on creation, both get that clock.",
                                        "type": "string"
                                    },
                                    "multidate_stop_clock": {
                                        "description": "Stop clock as HH:MM, applied to every date in multidate_dates.",
                                        "type": "string"
                                    },
                                    "planned_start_time": {
                                        "description": "Planned start of the work, for example 2026-08-28 13:30:00. An empty value stores the current time, or the planned end when a new item is created with only an end. Ignored when use_multidate is set.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "planned_stop_time": {
                                        "description": "Planned end of the work. A planned start later than the end is set to the end. When empty, the item is created as a Todo: roster_type is set to { \"id\": 12 } regardless of what was sent. The exception is a new item sent with roster_type { \"id\": 8 } and a planned start: its end is set to the start, so the duration is 0. Ignored when use_multidate is set.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "worker_ids": {
                                        "description": "Creates one plan item per worker. Takes precedence over worker.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "worker": {
                                        "description": "Worker as { id: N }, or an array of them",
                                        "type": "object"
                                    },
                                    "agrifield": {
                                        "description": "Agrifield as { id: N }, or an array of them",
                                        "type": "object"
                                    },
                                    "main_facility": {
                                        "description": "Facility as { id: N }, or an array of them",
                                        "type": "object"
                                    },
                                    "material_planned_usages": {
                                        "description": "Planned material usage ({ material: {id}, storage: {id}, amount, ratio_per_hectare }). Applied on create only.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "fault_planitem": {
                                        "description": "Links the plan item to a fault item: { faultitem: { id } }. Read only on POST /api/plans.",
                                        "type": "object"
                                    },
                                    "inspection_planitem": {
                                        "description": "Links the plan item to an inspection case: { inspection_case: { id } }. Read only on POST /api/plans.",
                                        "type": "object"
                                    },
                                    "split_to_days": {
                                        "description": "Splits a plan item spanning several days into one item per day.",
                                        "type": "boolean"
                                    },
                                    "roster_type": {
                                        "description": "Planitem subtype. Default is { \"id\": 8 }.",
                                        "type": "object"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Array of Planitems (serializer groups planitem, calendaritem, material_all, planitemlist, owner, auditcolumns), or plan report rows",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Planitem12"
                                    }
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the plan item (or the one it is based on)"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    }
                ],
                "x-alias-of": "put_api_plans_put"
            },
            "delete": {
                "tags": [
                    "Plans"
                ],
                "summary": "Delete Planitem by ID or UUID",
                "description": "Deletes Planitem by ID or UUID (a soft delete). Its fault and inspection links and planned material usages are removed, and it leaves its agrifield work and plan group. Returns the deleted Planitem.\n\nThe same operation also answers at `DELETE /api/planreport/{id}`, `DELETE /api/todos/{id}`.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "delete_api_plans_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Planitem id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Planitem (serializer groups planitem, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Planitem13"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Planitem"
                    },
                    "404": {
                        "description": "Not found among the caller's company and its partners"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    }
                ]
            }
        },
        "/api/todos/{id}": {
            "delete": {
                "tags": [
                    "Plans"
                ],
                "summary": "Delete Planitem by ID or UUID",
                "description": "Deletes Planitem by ID or UUID (a soft delete). Its fault and inspection links and planned material usages are removed, and it leaves its agrifield work and plan group. Returns the deleted Planitem.",
                "externalDocs": {
                    "description": "Help: Roster timeline (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/schedule/"
                },
                "operationId": "delete_api_todos_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Planitem id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Planitem (serializer groups planitem, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Planitem13"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Planitem"
                    },
                    "404": {
                        "description": "Not found among the caller's company and its partners"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    }
                ],
                "x-alias-of": "delete_api_plans_delete"
            }
        },
        "/api/planreport": {
            "get": {
                "tags": [
                    "Plans"
                ],
                "summary": "Planitem report for a period",
                "description": "Planitem report for a period. Accepts the same filters as the plan collection; selfonly=1 limits it to the authenticated worker and no_dates=1 ignores the period. Returns the plan report rows of the period (this month when neither the period nor project_id is given), oldest first; with no_dates=1 all of them, newest first. Paginated either way as { pagination, collection }, per_page rows a page (1500 when not given).",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "get_api_plans_report_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Start of the period, Y-m-d.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "End of the period, Y-m-d.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "no_dates",
                        "in": "query",
                        "description": "Truthy ignores the from/to range and returns records regardless of date.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "selfonly",
                        "in": "query",
                        "description": "Truthy limits the result to the authenticated worker.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "current_page",
                        "in": "query",
                        "description": "Page number, 1-based.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Rows a page, 1500 when not given.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by worktype id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by main facility id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "facility_id",
                        "in": "query",
                        "description": "Filter by facility id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by cost account id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by project id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "customer_id",
                        "in": "query",
                        "description": "Filter by customer id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "workobject_id",
                        "in": "query",
                        "description": "Filter by workobject id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "agrifield_work_id",
                        "in": "query",
                        "description": "Filter by agrifield work id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ pagination, collection }: the plan report rows of the page"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Plans"
                ],
                "summary": "Creates or modifies a Planitem",
                "description": "Creates or modifies a Planitem. Planitem subtypes, set through roster_type, are Task (id 8, the common case, with planned start and stop time), Todo (id 12, no planned stop time), Teamwork (id 18) and Groupwork (id 19).\n\nOne plan item is made per date (use_multidate), worker, agrifield and main facility given. Returns an array of Planitems; the /api/planreport routes return plan report rows instead.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "post_api_planreport_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Planitem id. Only when modifying an existing record; leave it out to create a new one.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "drag_n_drop_resource",
                        "in": "query",
                        "description": "Resource the item was dropped onto in the planner - worker, agrifield or main_facility.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "based_on_entity_id",
                        "in": "query",
                        "description": "Existing plan item the new one is copied from.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "use_multidate": {
                                        "description": "Set to 1 to create one plan item per date in multidate_dates instead of a single item.",
                                        "type": "boolean"
                                    },
                                    "multidate_dates": {
                                        "description": "Dates to create plan items for. Read only when use_multidate is set.",
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "format": "date"
                                        }
                                    },
                                    "multidate_start_clock": {
                                        "description": "Start clock as HH:MM, applied to every date in multidate_dates. When only one of the start and stop clocks is given on creation, both get that clock.",
                                        "type": "string"
                                    },
                                    "multidate_stop_clock": {
                                        "description": "Stop clock as HH:MM, applied to every date in multidate_dates.",
                                        "type": "string"
                                    },
                                    "planned_start_time": {
                                        "description": "Planned start of the work, for example 2026-08-28 13:30:00. An empty value stores the current time, or the planned end when a new item is created with only an end. Ignored when use_multidate is set.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "planned_stop_time": {
                                        "description": "Planned end of the work. A planned start later than the end is set to the end. When empty, the item is created as a Todo: roster_type is set to { \"id\": 12 } regardless of what was sent. The exception is a new item sent with roster_type { \"id\": 8 } and a planned start: its end is set to the start, so the duration is 0. Ignored when use_multidate is set.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "worker_ids": {
                                        "description": "Creates one plan item per worker. Takes precedence over worker.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "worker": {
                                        "description": "Worker as { id: N }, or an array of them",
                                        "type": "object"
                                    },
                                    "agrifield": {
                                        "description": "Agrifield as { id: N }, or an array of them",
                                        "type": "object"
                                    },
                                    "main_facility": {
                                        "description": "Facility as { id: N }, or an array of them",
                                        "type": "object"
                                    },
                                    "material_planned_usages": {
                                        "description": "Planned material usage ({ material: {id}, storage: {id}, amount, ratio_per_hectare }). Applied on create only.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "fault_planitem": {
                                        "description": "Links the plan item to a fault item: { faultitem: { id } }. Read only on POST /api/plans.",
                                        "type": "object"
                                    },
                                    "inspection_planitem": {
                                        "description": "Links the plan item to an inspection case: { inspection_case: { id } }. Read only on POST /api/plans.",
                                        "type": "object"
                                    },
                                    "split_to_days": {
                                        "description": "Splits a plan item spanning several days into one item per day.",
                                        "type": "boolean"
                                    },
                                    "roster_type": {
                                        "description": "Planitem subtype. Default is { \"id\": 8 }.",
                                        "type": "object"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Array of Planitems (serializer groups planitem, calendaritem, material_all, planitemlist, owner, auditcolumns), or plan report rows",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Planitem12"
                                    }
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the plan item (or the one it is based on)"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    }
                ]
            }
        },
        "/api/plans": {
            "get": {
                "tags": [
                    "Plans"
                ],
                "summary": "Planitem collection",
                "description": "Returns Planitem collection. /api/plans returns the plan items of the period, /api/todos the Todos (roster type 12) of any date.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "get_api_plans_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Startpoint. Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Endpoint. Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "agrifield_work_id",
                        "in": "query",
                        "description": "AgrifieldWork id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "color_base",
                        "in": "query",
                        "description": "Entity the row colour is taken from: worker, worktype, main_facility, secondary_facility, agrifield, project, customer or cost_account.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by cost account id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by main facility id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by project id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "selfonly",
                        "in": "query",
                        "description": "Truthy limits the result to the authenticated worker.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by worktype id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Planitems (serializer groups planitem, planitemlist, owner, search, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Planitem14"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "A filter entity (worker, worktype, main facility, cost account, project) the caller may not see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Plans"
                ],
                "summary": "Creates or modifies a Planitem",
                "description": "Creates or modifies a Planitem. Planitem subtypes, set through roster_type, are Task (id 8, the common case, with planned start and stop time), Todo (id 12, no planned stop time), Teamwork (id 18) and Groupwork (id 19).\n\nOne plan item is made per date (use_multidate), worker, agrifield and main facility given. Returns an array of Planitems; the /api/planreport routes return plan report rows instead.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "post_api_plans_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Planitem id. Only when modifying an existing record; leave it out to create a new one.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "drag_n_drop_resource",
                        "in": "query",
                        "description": "Resource the item was dropped onto in the planner - worker, agrifield or main_facility.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "based_on_entity_id",
                        "in": "query",
                        "description": "Existing plan item the new one is copied from.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "use_multidate": {
                                        "description": "Set to 1 to create one plan item per date in multidate_dates instead of a single item.",
                                        "type": "boolean"
                                    },
                                    "multidate_dates": {
                                        "description": "Dates to create plan items for. Read only when use_multidate is set.",
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "format": "date"
                                        }
                                    },
                                    "multidate_start_clock": {
                                        "description": "Start clock as HH:MM, applied to every date in multidate_dates. When only one of the start and stop clocks is given on creation, both get that clock.",
                                        "type": "string"
                                    },
                                    "multidate_stop_clock": {
                                        "description": "Stop clock as HH:MM, applied to every date in multidate_dates.",
                                        "type": "string"
                                    },
                                    "planned_start_time": {
                                        "description": "Planned start of the work, for example 2026-08-28 13:30:00. An empty value stores the current time, or the planned end when a new item is created with only an end. Ignored when use_multidate is set.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "planned_stop_time": {
                                        "description": "Planned end of the work. A planned start later than the end is set to the end. When empty, the item is created as a Todo: roster_type is set to { \"id\": 12 } regardless of what was sent. The exception is a new item sent with roster_type { \"id\": 8 } and a planned start: its end is set to the start, so the duration is 0. Ignored when use_multidate is set.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "worker_ids": {
                                        "description": "Creates one plan item per worker. Takes precedence over worker.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "worker": {
                                        "description": "Worker as { id: N }, or an array of them",
                                        "type": "object"
                                    },
                                    "agrifield": {
                                        "description": "Agrifield as { id: N }, or an array of them",
                                        "type": "object"
                                    },
                                    "main_facility": {
                                        "description": "Facility as { id: N }, or an array of them",
                                        "type": "object"
                                    },
                                    "material_planned_usages": {
                                        "description": "Planned material usage ({ material: {id}, storage: {id}, amount, ratio_per_hectare }). Applied on create only.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "fault_planitem": {
                                        "description": "Links the plan item to a fault item: { faultitem: { id } }. Read only on POST /api/plans.",
                                        "type": "object"
                                    },
                                    "inspection_planitem": {
                                        "description": "Links the plan item to an inspection case: { inspection_case: { id } }. Read only on POST /api/plans.",
                                        "type": "object"
                                    },
                                    "split_to_days": {
                                        "description": "Splits a plan item spanning several days into one item per day.",
                                        "type": "boolean"
                                    },
                                    "roster_type": {
                                        "description": "Planitem subtype. Default is { \"id\": 8 }.",
                                        "type": "object"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Array of Planitems (serializer groups planitem, calendaritem, material_all, planitemlist, owner, auditcolumns), or plan report rows",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Planitem12"
                                    }
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the plan item (or the one it is based on)"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    }
                ]
            }
        },
        "/api/plans/changedate/{id}": {
            "put": {
                "tags": [
                    "Plans"
                ],
                "summary": "Changes Planitem start-end date",
                "description": "Changes Planitem start-end date. Returns the Planitem.",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "put_api_plans_changedate_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Planitem id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "from": {
                                        "description": "New planned start, for example 2026-08-28 14:30:00.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "to": {
                                        "description": "New planned end, for example 2026-08-28 16:30:00.",
                                        "type": "string",
                                        "format": "date-time"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Planitem (serializer groups owner, planitem)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Planitem15"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Planitem"
                    },
                    "404": {
                        "description": "No such Planitem, or from or to missing"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    }
                ]
            }
        },
        "/api/plans/{planid}/mark-as-done": {
            "post": {
                "tags": [
                    "Plans"
                ],
                "summary": "Creates a Workdone from a Planitem and marks the plan item done",
                "description": "Creates new Workdone from Planitem (none when one exists already). Returns the Planitem (an empty body when there is none); the /api/planreport route returns its plan report rows.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "post_api_plans_mark_as_done_post",
                "parameters": [
                    {
                        "name": "planid",
                        "in": "path",
                        "description": "Planitem id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Planitem (serializer groups planitem, planitemlist, owner, gantt, calendaritem, auditcolumns), or plan report rows",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Planitem16"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Planitem"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    }
                ]
            }
        },
        "/api/planreport/{planid}/mark-as-done": {
            "post": {
                "tags": [
                    "Plans"
                ],
                "summary": "Creates a Workdone from a Planitem and marks the plan item done",
                "description": "Creates new Workdone from Planitem (none when one exists already). Returns the Planitem (an empty body when there is none); the /api/planreport route returns its plan report rows.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "post_api_planreport_mark_as_done_post",
                "parameters": [
                    {
                        "name": "planid",
                        "in": "path",
                        "description": "Planitem id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Planitem (serializer groups planitem, planitemlist, owner, gantt, calendaritem, auditcolumns), or plan report rows",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Planitem16"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Planitem"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    }
                ]
            }
        },
        "/api/plans-list": {
            "get": {
                "tags": [
                    "Plans"
                ],
                "summary": "Planitem collection",
                "description": "Planitem collection. Returns an array of objects with: id, from_time, to_time, planned_duration_sec, fullname, outer_id, is_deleted, updated_at_timestamp, _color, company, plan_status, roster_type, workdones, worker, worktype, agrifield.\n\n/api/plans-list returns the plan items of the period; /api/todos-list the Todos (roster type 12) of any date.",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "get_api_plans_list_get",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Startpoint. Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Endpoint. Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "agrifield_work_id",
                        "in": "query",
                        "description": "AgrifieldWork id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "color_base",
                        "in": "query",
                        "description": "Entity the row colour is taken from: worker, worktype, main_facility, secondary_facility, agrifield, project, customer or cost_account.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by cost account id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "customer_id",
                        "in": "query",
                        "description": "Filter by customer (or provider) id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by main facility id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by project id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "selfonly",
                        "in": "query",
                        "description": "Truthy limits the result to the authenticated worker.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "workobject_id",
                        "in": "query",
                        "description": "Filter by workobject id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by worktype id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Limits the company's own plan items to that department and its sub-departments.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of plan rows"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    }
                ]
            }
        },
        "/api/todos-list": {
            "get": {
                "tags": [
                    "Plans"
                ],
                "summary": "Planitem collection",
                "description": "Planitem collection. Returns an array of objects with: id, from_time, to_time, planned_duration_sec, fullname, outer_id, is_deleted, updated_at_timestamp, _color, company, plan_status, roster_type, workdones, worker, worktype, agrifield.\n\n/api/plans-list returns the plan items of the period; /api/todos-list the Todos (roster type 12) of any date.",
                "operationId": "get_api_todos_list_get",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Startpoint. Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Endpoint. Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "agrifield_work_id",
                        "in": "query",
                        "description": "AgrifieldWork id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "color_base",
                        "in": "query",
                        "description": "Entity the row colour is taken from: worker, worktype, main_facility, secondary_facility, agrifield, project, customer or cost_account.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by cost account id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "customer_id",
                        "in": "query",
                        "description": "Filter by customer (or provider) id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by main facility id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by project id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "selfonly",
                        "in": "query",
                        "description": "Truthy limits the result to the authenticated worker.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "workobject_id",
                        "in": "query",
                        "description": "Filter by workobject id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by worktype id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Limits the company's own plan items to that department and its sub-departments.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of plan rows"
                    }
                }
            }
        },
        "/api/todos": {
            "get": {
                "tags": [
                    "Plans"
                ],
                "summary": "Planitem collection",
                "description": "Returns Planitem collection. /api/plans returns the plan items of the period, /api/todos the Todos (roster type 12) of any date.",
                "externalDocs": {
                    "description": "Help: Roster timeline (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/schedule/"
                },
                "operationId": "get_api_todos_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Startpoint. Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Endpoint. Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "agrifield_work_id",
                        "in": "query",
                        "description": "AgrifieldWork id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "color_base",
                        "in": "query",
                        "description": "Entity the row colour is taken from: worker, worktype, main_facility, secondary_facility, agrifield, project, customer or cost_account.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by cost account id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by main facility id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by project id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "selfonly",
                        "in": "query",
                        "description": "Truthy limits the result to the authenticated worker.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by worktype id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Planitems (serializer groups planitem, planitemlist, owner, search, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Planitem14"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "A filter entity (worker, worktype, main facility, cost account, project) the caller may not see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    }
                ]
            }
        },
        "/api/plans/resourceusage/get": {
            "get": {
                "tags": [
                    "Plans"
                ],
                "summary": "Resource usage of planitems over a period",
                "description": "Resource usage of the company's own planitems over a period: { worker, main_facility, secondary_facility }, each an object keyed by the resource id with name, plancount, hours and hectares.",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (calendar view) (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkview/"
                },
                "operationId": "get_api_plans_get_resourceusage",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The whole of that day is included.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "agrifield_work_id",
                        "in": "query",
                        "description": "AgrifieldWork id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Usage by worker, main facility and secondary facility"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkview",
                        "title": "Fieldwork planning (calendar view)",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkview/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkview/"
                        }
                    }
                ]
            }
        },
        "/api/plans/{planid}/materialusages": {
            "get": {
                "tags": [
                    "Plans"
                ],
                "summary": "Material usages planned on one planitem.",
                "description": "Material usages planned on one planitem.",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "get_api_plans_materialusages_collection",
                "parameters": [
                    {
                        "name": "planid",
                        "in": "path",
                        "description": "Planitem id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of MaterialPlannedUsages (serializer groups owner, planitem, material_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/MaterialPlannedUsage14"
                                    }
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Planitem"
                    },
                    "404": {
                        "description": "Plan item not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Plans"
                ],
                "summary": "Adds material usage to a Planitem",
                "description": "Adds (or changes) the planned usage of one material on a Planitem. The amount follows from ratio_per_hectare and the field size when both are known. Returns the Planitem.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "post_api_plans_addmaterialusage_post",
                "parameters": [
                    {
                        "name": "planid",
                        "in": "path",
                        "description": "Planitem id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "material": {
                                        "description": "Material as { id: N }",
                                        "type": "object"
                                    },
                                    "storage": {
                                        "description": "Storage (a workobject) as { id: N }; storage 1 when left out",
                                        "type": "object"
                                    },
                                    "amount": {
                                        "type": "number"
                                    },
                                    "ratio_per_hectare": {
                                        "type": "number"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Planitem (serializer groups owner, planitem, material_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Planitem17"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Planitem"
                    },
                    "404": {
                        "description": "Plan item not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/plans/{planid}/materialusages/{usageid}": {
            "delete": {
                "tags": [
                    "Plans"
                ],
                "summary": "Deletes one material usage of a Planitem",
                "description": "Deletes one material usage of a Planitem. Removed permanently rather than soft-deleted, so the row does not appear in the recycle bin or in a from_updated_at delta sync. Returns the parent Planitem, not the removed usage.\n\nThe plan item is looked up by the wdid parameter, not by planid: without ?wdid= the answer is 404.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "delete_api_plans_materialusages_delete",
                "parameters": [
                    {
                        "name": "planid",
                        "in": "path",
                        "description": "Plan id (not read)",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "usageid",
                        "in": "path",
                        "description": "Material Usage id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "wdid",
                        "in": "query",
                        "description": "Plan id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Planitem (serializer groups owner, planitem, material_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Planitem17"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Planitem"
                    },
                    "404": {
                        "description": "Plan item or usage not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/load-pria-activities/{crop_period_id}/{pria_payee_uuid}/{pria_agrifield_uuid}": {
            "get": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Activities held in e-PRIA for a crop period, payee and field",
                "description": "Returns e-PRIA's activities (tegevused) of the payee in the crop year on the field. An activity exported from a workdone of the company carries workdone {id, pria_sync_time, material}. [] when e-PRIA answers none or an error.",
                "externalDocs": {
                    "description": "Help: Activities (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                },
                "operationId": "get_api_works_agrifield_pria_load_get",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "pria_payee_uuid",
                        "in": "path",
                        "description": "PRIA id of the payee (klientId)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "pria_agrifield_uuid",
                        "in": "path",
                        "description": "PRIA field uuid (poldAndmevahetuseId)",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of e-PRIA activities as e-PRIA answers them, each optionally with workdone"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/afworkandmaterialusage",
                        "title": "Activities",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/afworkandmaterialusage/",
                            "en": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                        }
                    }
                ]
            }
        },
        "/api/import-pria-activities": {
            "post": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Imports an e-PRIA activity as a Workdone",
                "description": "Saves an e-PRIA activity (as load-pria-activities returns it) as a workdone of the company's field carrying the PRIA field uuid, with the work type and materials matching the activity (created in the company when missing), approved. With workdone.id an existing workdone of the company is updated instead. Answers {\"error\": \"p\u00f5ld puudub\"} without poldAndmevahetuseId or aasta.",
                "externalDocs": {
                    "description": "Help: Activities (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                },
                "operationId": "post_api_import_pria_activities_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "andmevahetuseId": {
                                        "description": "PRIA data-exchange id of the activity. Stored as the work's PRIA uuid.",
                                        "type": "string"
                                    },
                                    "poldAndmevahetuseId": {
                                        "description": "PRIA data-exchange id of the field. Matched against the field's PRIA uuid.",
                                        "type": "string"
                                    },
                                    "aasta": {
                                        "description": "Crop period id the activity belongs to",
                                        "type": "integer"
                                    },
                                    "tegevus": {
                                        "description": "PRIA activity name, e.g. VAETAMINE. Used to find or create the matching work type.",
                                        "type": "string"
                                    },
                                    "algus": {
                                        "description": "Activity start as a Unix timestamp in milliseconds",
                                        "type": "integer"
                                    },
                                    "pindala": {
                                        "description": "Area served in hectares",
                                        "type": "number"
                                    },
                                    "lisaomadused": {
                                        "description": "PRIA extra properties: vaetamine, taimekaitsevahendiKasutamine, kulvamine, saagikoristus, lupjamine or seire with their materials",
                                        "type": "object"
                                    },
                                    "workdone": {
                                        "description": "{id} of a workdone of the company to update instead of creating one",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Workdone (serializer groups workdone, materialusage_all), or {error}",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone13"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "workdone.id is not a workdone of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/afworkandmaterialusage",
                        "title": "Activities",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/afworkandmaterialusage/",
                            "en": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                        }
                    }
                ]
            }
        },
        "/api/pria-activities/{workdone_id}": {
            "post": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Send Activity to e-Pria",
                "description": "Sends the workdone to e-PRIA as one activity per material type (an update when sent before). Returns {errors: [{workdone: {id}, code, description}]} when it cannot be sent, otherwise success (the workdones sent), failure and request (activities e-PRIA refused, and the body sent), errors.",
                "externalDocs": {
                    "description": "Help: Herding (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/herding/"
                },
                "operationId": "post_api_works_pria_export_post",
                "parameters": [
                    {
                        "name": "workdone_id",
                        "in": "path",
                        "description": "Workdone id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{success?, failure?, request?, errors?}; success holds Workdones (serializer groups workdone, materialusage_all)"
                    },
                    "404": {
                        "description": "Not a workdone the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/afworkandmaterialusage",
                        "title": "Activities",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/afworkandmaterialusage/",
                            "en": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                        }
                    },
                    {
                        "route": "/fieldbook/herding",
                        "title": "Herding",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/herding/",
                            "en": "https://help.terake.com/en/fieldbook/herding/"
                        }
                    }
                ]
            }
        },
        "/api/pria-activities/herding/{herding_id}": {
            "post": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Send Herding to e-Pria",
                "description": "Sends the herding to e-PRIA as a KARJATAMINE activity. The Herding is answered; pria_result holds the first problem or e-PRIA's first error, null on success.",
                "externalDocs": {
                    "description": "Help: Herding (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/herding/"
                },
                "operationId": "post_api_herding_pria_export_post",
                "parameters": [
                    {
                        "name": "herding_id",
                        "in": "path",
                        "description": "Herding id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Herding (serializer group herdings)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Herding2"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not a herding of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/herding",
                        "title": "Herding",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/herding/",
                            "en": "https://help.terake.com/en/fieldbook/herding/"
                        }
                    }
                ]
            }
        },
        "/api/pria-send-yields/{crop_period_id}": {
            "post": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Sends the yields of the crop period to e-PRIA",
                "description": "Sends the planned and real yield of the listed fields' crop year rows to e-PRIA. Only fields of the company are taken.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "post_api_pria_send_yields_post",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "agrifield_id": {
                                        "description": "Comma-separated ids of the fields whose yields are sent",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "List of {agrifield_id, agrifield_data_id, success, error}"
                    },
                    "404": {
                        "description": "None of the fields has a crop year row in the period"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/priafiles": {
            "get": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "PriaFile collection",
                "description": "Every PRIA file of the caller's company, deleted ones included, in id order.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "get_api-priafiles-get-collection",
                "responses": {
                    "200": {
                        "description": "Array of PriaFile (serializer groups auditcolumns, priapayee, priafile_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/PriaFile"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Create new PriaFile",
                "description": "Always creates a new PRIA file of the caller's company.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "post_api-priafiles-post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "description": "Id in another system",
                                        "type": "string"
                                    },
                                    "is_deleted": {
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The PriaFile (serializer groups auditcolumns, priapayee, priafile_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PriaFile"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/priafiles/{id}": {
            "get": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "PriaFile by ID or UUID",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "get_api-priafiles-get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "PriaFile id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The PriaFile (serializer groups auditcolumns, priapayee, priafile_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PriaFile"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Modify PriaFile",
                "description": "A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "put_api-priafiles-put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "PriaFile id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "description": "Id in another system",
                                        "type": "string"
                                    },
                                    "is_deleted": {
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The PriaFile (serializer groups auditcolumns, priapayee, priafile_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PriaFile"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Deletes a PriaFile together with the GPX records imported from it",
                "description": "Removed permanently rather than soft-deleted, so the row does not appear in the recycle bin or in a from_updated_at delta sync.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "delete_api-priafiles-delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "PriaFile id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{id, is_deleted: 1}"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/gpxrecords/archivefields/{pria_file_id}": {
            "put": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Archives the listed Agrifields of a PRIA file",
                "description": "Fields of other companies are skipped; another company's PRIA file archives nothing.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "put_api-gpxrecords-archivefields",
                "parameters": [
                    {
                        "name": "pria_file_id",
                        "in": "path",
                        "description": "PriaFile id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "agrifield_ids": {
                                        "description": "Fields to archive",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"SUCCESS\": 1}"
                    },
                    "404": {
                        "description": "Unknown PRIA file or field"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/gpxrecords/mergefields/{pria_file_id}": {
            "put": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Merges the listed Agrifields of a PRIA file",
                "description": "The last field of the caller's company in the list is the master; the others are archived, name it as master and remember the PRIA file's crop year as the year they were merged from.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "put_api-gpxrecords-mergefields",
                "parameters": [
                    {
                        "name": "pria_file_id",
                        "in": "path",
                        "description": "PriaFile id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "agrifield_ids": {
                                        "description": "Fields to merge",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"SUCCESS\": 1}"
                    },
                    "404": {
                        "description": "Unknown PRIA file or field"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/pria-import/fields/{crop_period_id}": {
            "post": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Import Agrifields from e-Pria",
                "description": "The payee's fields and meadows of the crop year from e-PRIA, each with the company's field it matched and that field's crop year row. For eight hours the stored result answers instead of e-PRIA. POST names the payee in the body (the object GET /api/priapayees-import lists: pria_uuid, regnr, name); a payee not known yet is registered. Answers {error} when e-PRIA refuses or has no fields.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "post_api-field-pria-import-post",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "pria_payee_id",
                        "in": "path",
                        "description": "PriaPayee id (GET only)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cache_duration_sec",
                        "in": "query",
                        "description": "How long a cached PRIA response stays valid. Defaults to 28800 (8 hours).",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "pria_uuid": {
                                        "description": "e-PRIA id of the payee",
                                        "type": "string"
                                    },
                                    "regnr": {
                                        "description": "Registry or personal code, for a new payee",
                                        "type": "string"
                                    },
                                    "name": {
                                        "description": "Name, for a new payee",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Array of {pria, agrifield, agrifield_data} (serializer group field_import), or {error}"
                    },
                    "404": {
                        "description": "Unknown payee or crop year, or a POST without pria_uuid"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/afworkandmaterialusage",
                        "title": "Activities",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/afworkandmaterialusage/",
                            "en": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/pria-import/fields/{crop_period_id}/{pria_payee_id}": {
            "get": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Import Agrifields from e-Pria for a payee",
                "description": "As the POST, for a payee already registered.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "get_api-fields-comparision-action",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "pria_payee_id",
                        "in": "path",
                        "description": "PriaPayee id (GET only)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cache_duration_sec",
                        "in": "query",
                        "description": "How long a cached PRIA response stays valid. Defaults to 28800 (8 hours).",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "pria_uuid": {
                                        "description": "e-PRIA id of the payee",
                                        "type": "string"
                                    },
                                    "regnr": {
                                        "description": "Registry or personal code, for a new payee",
                                        "type": "string"
                                    },
                                    "name": {
                                        "description": "Name, for a new payee",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Array of {pria, agrifield, agrifield_data} (serializer group field_import), or {error}"
                    },
                    "404": {
                        "description": "Unknown payee or crop year, or a POST without pria_uuid"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/agrifields/upload/gpx": {
            "post": {
                "tags": [
                    "Agrifields",
                    "PriaFiles"
                ],
                "summary": "Uploads Agrifield geometry as a ZIP containing a shapefile (.shp) or a GPX track",
                "description": "Replaces the PRIA files of the payee and crop year with one holding the rows of the uploaded file.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "post_api-upload-gpx-post",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "query",
                        "description": "Crop period the uploaded fields are attached to, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "pria_payee_id",
                        "in": "query",
                        "description": "PRIA payee the uploaded fields are attached to",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "file": {
                                        "description": "ZIP with a shapefile or a GPX file",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{filecount} or {error: message.file_format_error}"
                    },
                    "404": {
                        "description": "Unknown payee or crop year"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/gpxrecords/{id}": {
            "get": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "GPX records belonging to one PRIA file",
                "description": "Each record with the company's fields it may belong to (agrifields). A single field matched by PRIA uuid, or by massive and field number, is remembered on the record.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "get_api-priafiles-gpxrecords-get-collection",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "PriaFile id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of records"
                    },
                    "404": {
                        "description": "Not found in the caller's company, or the file has no records"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/gpx/importhere": {
            "put": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Relates a PRIA record to an existing Agrifield and syncs its crop rotation",
                "description": "The PRIA uuid moves to the field (a new workobject is made when the field is not the company's). gpx/importhere takes pria_record_id and agrifield_id from the query.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "put_api-gpx-importhere-put",
                "parameters": [
                    {
                        "name": "pria_record_id",
                        "in": "path",
                        "description": "PRIA record id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "agrifield_id",
                        "in": "path",
                        "description": "Agrifield id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "importable_fields": {
                                        "description": "What overwrites existing values: crop, field_size, field_number, agrifield_name, geometry (default: all)",
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{pria, agrifield, agrifield_data} (serializer group field_import)"
                    },
                    "404": {
                        "description": "Unknown PRIA record, or another company's"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/pria-import/relate-field/{pria_record_id}/{agrifield_id}": {
            "put": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Relates a PRIA record to an existing Agrifield and syncs its crop rotation",
                "description": "The PRIA uuid moves to the field (a new workobject is made when the field is not the company's). gpx/importhere takes pria_record_id and agrifield_id from the query.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "put_api-pria-import-relate-field-put",
                "parameters": [
                    {
                        "name": "pria_record_id",
                        "in": "path",
                        "description": "PRIA record id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "agrifield_id",
                        "in": "path",
                        "description": "Agrifield id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "importable_fields": {
                                        "description": "What overwrites existing values: crop, field_size, field_number, agrifield_name, geometry (default: all)",
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{pria, agrifield, agrifield_data} (serializer group field_import)"
                    },
                    "404": {
                        "description": "Unknown PRIA record, or another company's"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/pria-import/sync-crop-rotation/{pria_record_id}/{agrifield_id}": {
            "put": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Relates a PRIA record to an existing Agrifield and syncs its crop rotation",
                "description": "The PRIA uuid moves to the field (a new workobject is made when the field is not the company's). gpx/importhere takes pria_record_id and agrifield_id from the query.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "put_api-pria-import-sync-crop-rotation-put",
                "parameters": [
                    {
                        "name": "pria_record_id",
                        "in": "path",
                        "description": "PRIA record id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "agrifield_id",
                        "in": "path",
                        "description": "Agrifield id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "importable_fields": {
                                        "description": "What overwrites existing values: crop, field_size, field_number, agrifield_name, geometry (default: all)",
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{pria, agrifield, agrifield_data} (serializer group field_import)"
                    },
                    "404": {
                        "description": "Unknown PRIA record, or another company's"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/gpx/importallold": {
            "put": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Imports the selected PRIA records onto existing Agrifields",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "put_api-gpx-importallold-put",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "join_matrix": {
                                        "description": "Rows pairing a PRIA record with the existing field it is joined to",
                                        "type": "array",
                                        "items": {
                                            "properties": {
                                                "gpx_record_id": {
                                                    "type": "integer"
                                                },
                                                "agrifield_id": {
                                                    "type": "integer"
                                                },
                                                "agrifield_data_id": {
                                                    "type": "integer"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "importable_fields": {
                                        "description": "What overwrites existing values (default: all)",
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{\"ok\": true}"
                    },
                    "404": {
                        "description": "Unknown PRIA record, or another company's"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/pria-import/loadgeometry/{gpx_record_id}": {
            "get": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Field geometry held in one GPX record",
                "description": "The record's geometry and centroid, and the company's fields of its massive with theirs.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "get_api-pria-import-loadgeometry-get-collection",
                "parameters": [
                    {
                        "name": "gpx_record_id",
                        "in": "path",
                        "description": "PRIA record id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{geoJson, centroid, agrifields: [{id, name, fullname, field_number, geoJson}]}"
                    },
                    "404": {
                        "description": "Unknown PRIA record, or another company's"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/gpx/importallnew": {
            "put": {
                "tags": [
                    "PriaFiles"
                ],
                "summary": "Imports the selected PRIA records as new Agrifields",
                "description": "One new field per record, with its crop year row filled from the record.",
                "externalDocs": {
                    "description": "Help: Field import (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                },
                "operationId": "put_api-gpx-importallnew-put",
                "parameters": [
                    {
                        "name": "gpx_record_ids",
                        "in": "query",
                        "description": "Comma-separated PRIA record ids; unknown ones and other companies' are skipped",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "importable_fields": {
                                        "description": "What overwrites existing values (default: all)",
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Array of {pria, agrifield, agrifield_data} (serializer group field_import)"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    }
                ]
            }
        },
        "/api/priapayees": {
            "get": {
                "tags": [
                    "PriaPayees"
                ],
                "summary": "PriaPayee collection",
                "description": "The company's PRIA payees that are neither deleted nor archived, by name.",
                "externalDocs": {
                    "description": "Help: ARIB applicants (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/priapayee/"
                },
                "operationId": "get_api_priapayees_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived payees and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of PriaPayee (serializer groups priapayee, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/PriaPayee5"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/priapayee",
                        "title": "ARIB applicants",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/priapayee/",
                            "en": "https://help.terake.com/en/fieldbook/priapayee/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "PriaPayees"
                ],
                "summary": "Create PriaPayee",
                "description": "Creates a PriaPayee, or modifies the one the body names by \"id\" or \"uuid\". A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: ARIB applicants (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/priapayee/"
                },
                "operationId": "post_api_priapayees_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "regnr": {
                                        "description": "Registry code, or personal code of a private payee",
                                        "type": "string"
                                    },
                                    "display_color": {
                                        "description": "Colour as #rrggbb",
                                        "type": "string"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The PriaPayee (serializer groups priapayee, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PriaPayee5"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/priapayee",
                        "title": "ARIB applicants",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/priapayee/",
                            "en": "https://help.terake.com/en/fieldbook/priapayee/"
                        }
                    }
                ]
            }
        },
        "/api/priapayees-import": {
            "get": {
                "tags": [
                    "PriaPayees"
                ],
                "summary": "PriaPayees held in e-PRIA",
                "description": "The payees e-PRIA holds for the caller, matched with the company's payees by PRIA id, else by registry or personal code (a code match stores the PRIA id). Returns e-PRIA's error object as it came, or {error: message.personal_code_not_verified, code: 401} without a verified personal code.",
                "externalDocs": {
                    "description": "Help: ARIB applicants (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/priapayee/"
                },
                "operationId": "get_api_priapayees_import_get",
                "responses": {
                    "200": {
                        "description": "Array of {id, name, regnr, pria_uuid, pria_privileges: {onVaatamiseOigus, onSisestamiseOigus, onEsitamineOigus, onTaielikVolitus}}, or an error object"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/afworkandmaterialusage",
                        "title": "Activities",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/afworkandmaterialusage/",
                            "en": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    },
                    {
                        "route": "/fieldbook/priapayee",
                        "title": "ARIB applicants",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/priapayee/",
                            "en": "https://help.terake.com/en/fieldbook/priapayee/"
                        }
                    }
                ]
            }
        },
        "/api/priapayees/{id}": {
            "get": {
                "tags": [
                    "PriaPayees"
                ],
                "summary": "Get PriaPayee",
                "description": "PriaPayee by id or uuid.",
                "externalDocs": {
                    "description": "Help: ARIB applicants (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/priapayee/"
                },
                "operationId": "get_api_priapayees_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "PriaPayee id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The PriaPayee (serializer groups priapayee, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PriaPayee5"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/priapayee",
                        "title": "ARIB applicants",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/priapayee/",
                            "en": "https://help.terake.com/en/fieldbook/priapayee/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "PriaPayees"
                ],
                "summary": "Update PriaPayee",
                "description": "Modifies a PriaPayee. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: ARIB applicants (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/priapayee/"
                },
                "operationId": "put_api_priapayees_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "PriaPayee id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "regnr": {
                                        "description": "Registry code, or personal code of a private payee",
                                        "type": "string"
                                    },
                                    "display_color": {
                                        "description": "Colour as #rrggbb",
                                        "type": "string"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The PriaPayee (serializer groups priapayee, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PriaPayee5"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this PriaPayee"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/priapayee",
                        "title": "ARIB applicants",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/priapayee/",
                            "en": "https://help.terake.com/en/fieldbook/priapayee/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "PriaPayees"
                ],
                "summary": "Delete PriaPayee",
                "description": "Deletes a PriaPayee by id or uuid (marks it deleted and archived). Returns the deleted PriaPayee.",
                "externalDocs": {
                    "description": "Help: ARIB applicants (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/priapayee/"
                },
                "operationId": "delete_api_priapayees_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "PriaPayee id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted PriaPayee (serializer groups priapayee, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PriaPayee5"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this PriaPayee"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/priapayee",
                        "title": "ARIB applicants",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/priapayee/",
                            "en": "https://help.terake.com/en/fieldbook/priapayee/"
                        }
                    }
                ]
            }
        },
        "/api/pria_confirmation/{id}": {
            "post": {
                "tags": [
                    "PriaPayees"
                ],
                "summary": "Send PRIA confirmation letter",
                "description": "Writes the letter confirming to PRIA that the payee keeps its electronic field book in Terake (to PRIA's address and to the caller; mailed by the e-mail batch) and stamps confirmation_sent_at. Does not have a request body.",
                "externalDocs": {
                    "description": "Help: ARIB applicants (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/priapayee/"
                },
                "operationId": "post_api_priapayee_priaconfirmation_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "PriaPayee id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The PriaPayee (every exposed field, no serializer groups)"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/priapayee",
                        "title": "ARIB applicants",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/priapayee/",
                            "en": "https://help.terake.com/en/fieldbook/priapayee/"
                        }
                    }
                ]
            }
        },
        "/api/professions": {
            "get": {
                "tags": [
                    "Professions"
                ],
                "externalDocs": {
                    "description": "Help: Professions (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/professions/"
                },
                "operationId": "get_api_professions_list",
                "parameters": [
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "With 1: rows archived by their owner or by the calling company, plus rows deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Unix timestamp: every row changed at or after it, deleted and archived included, for delta sync",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "groups",
                        "in": "query",
                        "description": "Comma-separated subset of the serializer groups this endpoint offers; narrows the response",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/professions",
                        "title": "Professions",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/professions/",
                            "en": "https://help.terake.com/en/admin/main/professions/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Professions"
                ],
                "externalDocs": {
                    "description": "Help: Professions (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/professions/"
                },
                "operationId": "post_api_professions_create",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "required": [
                                    "name"
                                ],
                                "properties": {
                                    "id": {
                                        "description": "Names an existing row to update instead of creating one",
                                        "type": "integer"
                                    },
                                    "uuid": {
                                        "description": "Same, by uuid (clients that create records offline)",
                                        "type": "string"
                                    },
                                    "import_type": {
                                        "description": "With \"file\" (the file import screen) the row to update is matched by outer_id first, then id, then uuid, within the calling company",
                                        "type": "string",
                                        "enum": [
                                            "file"
                                        ]
                                    },
                                    "outer_id": {
                                        "description": "The external identifier a file import matches on; only read with import_type=file",
                                        "type": "string"
                                    },
                                    "name": {
                                        "description": "Profession name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/professions",
                        "title": "Professions",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/professions/",
                            "en": "https://help.terake.com/en/admin/main/professions/"
                        }
                    }
                ]
            }
        },
        "/api/professions/{id}": {
            "get": {
                "tags": [
                    "Professions"
                ],
                "externalDocs": {
                    "description": "Help: Professions (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/professions/"
                },
                "operationId": "get_api_professions_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/professions",
                        "title": "Professions",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/professions/",
                            "en": "https://help.terake.com/en/admin/main/professions/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Professions"
                ],
                "externalDocs": {
                    "description": "Help: Professions (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/professions/"
                },
                "operationId": "put_api_professions_update",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "properties": {
                                    "name": {
                                        "description": "Profession name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/professions",
                        "title": "Professions",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/professions/",
                            "en": "https://help.terake.com/en/admin/main/professions/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Professions"
                ],
                "externalDocs": {
                    "description": "Help: Professions (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/professions/"
                },
                "operationId": "delete_api_professions_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/professions",
                        "title": "Professions",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/professions/",
                            "en": "https://help.terake.com/en/admin/main/professions/"
                        }
                    }
                ]
            }
        },
        "/api/professions/{id}/togglearchive": {
            "put": {
                "tags": [
                    "Professions"
                ],
                "externalDocs": {
                    "description": "Help: Professions (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/professions/"
                },
                "operationId": "put_api_professions_togglearchive",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/professions",
                        "title": "Professions",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/professions/",
                            "en": "https://help.terake.com/en/admin/main/professions/"
                        }
                    }
                ]
            }
        },
        "/api/projects": {
            "get": {
                "tags": [
                    "Projects"
                ],
                "summary": "Projects list",
                "description": "Returns Projects collection (Array of Project json entries): the planned figures, the resource, roster and approved work totals, customer, project manager, cost account and QR image.",
                "externalDocs": {
                    "description": "Help: Projects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/projects/"
                },
                "operationId": "get_api_projects_get_collection",
                "parameters": [
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1 then return the archived projects instead of the active ones",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of project rows"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/projects/",
                            "en": "https://help.terake.com/en/admin/main/projects/"
                        }
                    },
                    {
                        "route": "/plans/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/plans/projects/",
                            "en": "https://help.terake.com/en/plans/projects/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Projects"
                ],
                "summary": "Create or modify a Project",
                "description": "Creates a Project, or modifies the one named by \"id\" in the body. Returns the project's list row; a key the body leaves out\nleaves that field alone, except qr_image, whose absence removes the QR image.",
                "externalDocs": {
                    "description": "Help: Projects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/projects/"
                },
                "operationId": "post_api_projects_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Project id (PUT)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "description": "Id of the project in another system",
                                        "type": "string"
                                    },
                                    "from_time": {
                                        "description": "Empty clears it",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "to_time": {
                                        "description": "Empty clears it",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "actual_finish_time": {
                                        "description": "Empty clears it",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "planned_work_hours": {
                                        "type": "number"
                                    },
                                    "planned_budget": {
                                        "type": "number"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "customer": {
                                        "description": "{id} of a customer, or {name} of a new one; null clears it",
                                        "type": "object"
                                    },
                                    "cost_account": {
                                        "description": "{id} of a cost account, or {name} of a new one; null clears it. Kept in the project's own cost account rule",
                                        "type": "object"
                                    },
                                    "department": {
                                        "description": "Departments ({id}) the project is related to. Replaces the whole set",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "project_manager": {
                                        "description": "{id} of a worker; given the project manager role",
                                        "type": "object"
                                    },
                                    "qr_image": {
                                        "description": "{qr_text}; leaving it out removes the QR image",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The project row, as in the list (an empty body for a deleted project)"
                    },
                    "403": {
                        "description": "The caller may not modify this Project"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/projects/",
                            "en": "https://help.terake.com/en/admin/main/projects/"
                        }
                    },
                    {
                        "route": "/plans/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/plans/projects/",
                            "en": "https://help.terake.com/en/plans/projects/"
                        }
                    }
                ]
            }
        },
        "/api/projects/{id}": {
            "get": {
                "tags": [
                    "Projects"
                ],
                "summary": "Project by ID",
                "description": "Returns Project by ID: the list row of the project, and the objects related to it in terake_object_relation keyed by type\n(worker, worktype, main_facility, material, department, workobject; department is always present).",
                "externalDocs": {
                    "description": "Help: Projects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/projects/"
                },
                "operationId": "get_api_projects_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Project id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The project row with its suggestions (serializer groups default, projects, projects_formatted_date)"
                    },
                    "404": {
                        "description": "No undeleted project with that id in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/projects/",
                            "en": "https://help.terake.com/en/admin/main/projects/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/plans/projects/",
                            "en": "https://help.terake.com/en/plans/projects/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Projects"
                ],
                "summary": "Modify a Project",
                "description": "Modifies a Project. Returns the project's list row; a key the body leaves out\nleaves that field alone, except qr_image, whose absence removes the QR image.",
                "externalDocs": {
                    "description": "Help: Projects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/projects/"
                },
                "operationId": "put_api_projects_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Project id (PUT)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "description": "Id of the project in another system",
                                        "type": "string"
                                    },
                                    "from_time": {
                                        "description": "Empty clears it",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "to_time": {
                                        "description": "Empty clears it",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "actual_finish_time": {
                                        "description": "Empty clears it",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "planned_work_hours": {
                                        "type": "number"
                                    },
                                    "planned_budget": {
                                        "type": "number"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "customer": {
                                        "description": "{id} of a customer, or {name} of a new one; null clears it",
                                        "type": "object"
                                    },
                                    "cost_account": {
                                        "description": "{id} of a cost account, or {name} of a new one; null clears it. Kept in the project's own cost account rule",
                                        "type": "object"
                                    },
                                    "department": {
                                        "description": "Departments ({id}) the project is related to. Replaces the whole set",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "project_manager": {
                                        "description": "{id} of a worker; given the project manager role",
                                        "type": "object"
                                    },
                                    "qr_image": {
                                        "description": "{qr_text}; leaving it out removes the QR image",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The project row, as in the list (an empty body for a deleted project)"
                    },
                    "403": {
                        "description": "The caller may not modify this Project"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/projects/",
                            "en": "https://help.terake.com/en/admin/main/projects/"
                        }
                    },
                    {
                        "route": "/plans/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/plans/projects/",
                            "en": "https://help.terake.com/en/plans/projects/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Projects"
                ],
                "summary": "Delete Project by ID or UUID",
                "description": "Deletes Project by ID or UUID (marks it deleted and archived, removes its QR image). Returns the deleted Project.",
                "externalDocs": {
                    "description": "Help: Projects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/projects/"
                },
                "operationId": "delete_api_projects_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Project id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Project uuid, instead of the id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Project (serializer groups default, projects)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Project15"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Project"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/projects/",
                            "en": "https://help.terake.com/en/admin/main/projects/"
                        }
                    },
                    {
                        "route": "/plans/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/plans/projects/",
                            "en": "https://help.terake.com/en/plans/projects/"
                        }
                    }
                ]
            }
        },
        "/api/gantt/{id}": {
            "get": {
                "tags": [
                    "Projects"
                ],
                "summary": "Project tasks for Gantt graph by ID or UUID",
                "description": "Returns Project tasks for Gantt graph by ID or UUID: the project with its roster items, plan items, approved work and resources.",
                "externalDocs": {
                    "description": "Help: Graphical overview (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/gantt/"
                },
                "operationId": "get_api_gantt_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Project id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Project uuid, instead of the id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Project (serializer group gantt)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Project16"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    }
                ]
            }
        },
        "/api/project-relations/{id}": {
            "get": {
                "tags": [
                    "Projects"
                ],
                "summary": "Returns Resources related with project",
                "description": "Returns Resources related with project: the undeleted, unarchived workers, work types, facilities (main_facility), maintenance units and materials attached to it, each as {id, uuid, name, fullname, slug}.",
                "operationId": "get_api_project_relations_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Project id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Project uuid, instead of the id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{worker: [...], worktype: [...], main_facility: [...], maintenance_unit: [...], material: [...]}"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                }
            }
        },
        "/api/project-resource/{resource_type}/{project_id}": {
            "get": {
                "tags": [
                    "Projects"
                ],
                "summary": "Project related Resources collection",
                "description": "Project related Resources collection. Returns the project statistics per resource of that\ntype: planned (the project's own resources) and reported (roster, plan and approved work) amounts and costs.",
                "externalDocs": {
                    "description": "Help: Projects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/projects/"
                },
                "operationId": "get_api_project_resource_list2_get",
                "parameters": [
                    {
                        "name": "resource_type",
                        "in": "path",
                        "description": "One of: worker, worktype, main_facility, facility, workobject, agrifield, maintenance_unit, material. facility equals main_facility, agrifield equals workobject",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "path",
                        "description": "Project id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of statistics rows; [] when the project is not an undeleted one of the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/projects/",
                            "en": "https://help.terake.com/en/admin/main/projects/"
                        }
                    },
                    {
                        "route": "/plans/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/plans/projects/",
                            "en": "https://help.terake.com/en/plans/projects/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Projects"
                ],
                "summary": "Creates or modifies a Project resource",
                "description": "Creates or modifies a resource attached to a Project. Returns the stored project resource's\nstatistics row, or a list of them when \"resource\" is a list of objects with ids.",
                "externalDocs": {
                    "description": "Help: Projects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/projects/"
                },
                "operationId": "post_api_project_worker_post",
                "parameters": [
                    {
                        "name": "resource_type",
                        "in": "path",
                        "description": "One of: worker, worktype, main_facility, facility, workobject, agrifield, maintenance_unit, material. facility equals main_facility, agrifield equals workobject",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "path",
                        "description": "Project id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "resource_id",
                        "in": "path",
                        "description": "Id of the project resource, of the type named by resource_type (PUT)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "project": {
                                        "description": "Project the resource belongs to, as an object with an id field; overrides the path",
                                        "type": "object"
                                    },
                                    "resource": {
                                        "description": "Resource being attached, as an object with an id field (overrides the path), or a list of them to attach several",
                                        "oneOf": [
                                            {
                                                "type": "object"
                                            },
                                            {
                                                "type": "array",
                                                "items": {
                                                    "type": "object"
                                                }
                                            }
                                        ]
                                    },
                                    "resource_id": {
                                        "description": "Resource id, when sent as a plain value rather than in resource",
                                        "type": "integer"
                                    },
                                    "from_time": {
                                        "description": "Empty clears it",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "to_time": {
                                        "description": "Empty clears it",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "amount": {
                                        "description": "Planned units (hours)",
                                        "type": "number"
                                    },
                                    "planned_budget": {
                                        "type": "number"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "qr": {
                                        "type": "string"
                                    },
                                    "qr_image": {
                                        "description": "{qr_text}",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The statistics row (or a list of them); [] when the project is not an undeleted one of the caller's company"
                    },
                    "403": {
                        "description": "The caller may not modify this Project"
                    },
                    "404": {
                        "description": "The resource to attach is not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/projects/",
                            "en": "https://help.terake.com/en/admin/main/projects/"
                        }
                    },
                    {
                        "route": "/plans/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/plans/projects/",
                            "en": "https://help.terake.com/en/plans/projects/"
                        }
                    }
                ]
            }
        },
        "/api/project-resource/{resource_type}/{project_id}/{resource_id}": {
            "get": {
                "tags": [
                    "Projects"
                ],
                "summary": "Project statistics row for one resource",
                "description": "Returns the project statistics row for one resource; an empty body when there is none.",
                "externalDocs": {
                    "description": "Help: Projects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/projects/"
                },
                "operationId": "get_api_project_worker_get",
                "parameters": [
                    {
                        "name": "resource_type",
                        "in": "path",
                        "description": "One of: worker, worktype, main_facility, facility, workobject, agrifield, maintenance_unit, material. facility equals main_facility, agrifield equals workobject",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "path",
                        "description": "Project id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "resource_id",
                        "in": "path",
                        "description": "Id of the project resource, of the type named by resource_type",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The statistics row, or an empty body when there is none"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/projects/",
                            "en": "https://help.terake.com/en/admin/main/projects/"
                        }
                    },
                    {
                        "route": "/plans/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/plans/projects/",
                            "en": "https://help.terake.com/en/plans/projects/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Projects"
                ],
                "summary": "Modifies a Project resource",
                "description": "Creates or modifies a resource attached to a Project. Returns the stored project resource's\nstatistics row.",
                "externalDocs": {
                    "description": "Help: Projects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/projects/"
                },
                "operationId": "put_api_project_worker_put",
                "parameters": [
                    {
                        "name": "resource_type",
                        "in": "path",
                        "description": "One of: worker, worktype, main_facility, facility, workobject, agrifield, maintenance_unit, material. facility equals main_facility, agrifield equals workobject",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "path",
                        "description": "Project id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "resource_id",
                        "in": "path",
                        "description": "Id of the project resource, of the type named by resource_type (PUT)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "project": {
                                        "description": "Project the resource belongs to, as an object with an id field; overrides the path",
                                        "type": "object"
                                    },
                                    "resource": {
                                        "description": "Resource being attached, as an object with an id field (overrides the path), or a list of them to attach several",
                                        "oneOf": [
                                            {
                                                "type": "object"
                                            },
                                            {
                                                "type": "array",
                                                "items": {
                                                    "type": "object"
                                                }
                                            }
                                        ]
                                    },
                                    "resource_id": {
                                        "description": "Resource id, when sent as a plain value rather than in resource",
                                        "type": "integer"
                                    },
                                    "from_time": {
                                        "description": "Empty clears it",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "to_time": {
                                        "description": "Empty clears it",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "amount": {
                                        "description": "Planned units (hours)",
                                        "type": "number"
                                    },
                                    "planned_budget": {
                                        "type": "number"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "qr": {
                                        "type": "string"
                                    },
                                    "qr_image": {
                                        "description": "{qr_text}",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The statistics row (or a list of them); [] when the project is not an undeleted one of the caller's company"
                    },
                    "403": {
                        "description": "The caller may not modify this Project"
                    },
                    "404": {
                        "description": "The resource to attach is not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/projects/",
                            "en": "https://help.terake.com/en/admin/main/projects/"
                        }
                    },
                    {
                        "route": "/plans/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/plans/projects/",
                            "en": "https://help.terake.com/en/plans/projects/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Projects"
                ],
                "summary": "Removes a resource from a Project, together with its QR image and preferences",
                "description": "Removes a resource from a Project, together with its QR image and preferences. Removed\npermanently rather than soft-deleted, so the row does not appear in the recycle bin or in a\nfrom_updated_at delta sync. Returns the project's remaining stats row for that resource type,\nor { id, is_deleted: true } when none remains; [] when the project has no such resource.",
                "externalDocs": {
                    "description": "Help: Projects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/projects/"
                },
                "operationId": "delete_api_project_resource_delete",
                "parameters": [
                    {
                        "name": "resource_type",
                        "in": "path",
                        "description": "One of: worker, worktype, main_facility, facility, workobject, agrifield, maintenance_unit, material. facility equals main_facility, agrifield equals workobject",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "path",
                        "description": "Project id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "resource_id",
                        "in": "path",
                        "description": "Id of the project resource, of the type named by resource_type",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The remaining statistics row, {id, is_deleted: true}, or []"
                    },
                    "403": {
                        "description": "Not an undeleted project of the caller's company, or the caller may not modify it"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/projects/",
                            "en": "https://help.terake.com/en/admin/main/projects/"
                        }
                    },
                    {
                        "route": "/plans/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/plans/projects/",
                            "en": "https://help.terake.com/en/plans/projects/"
                        }
                    }
                ]
            }
        },
        "/api/qr_code/{classificator_name}/{id}": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "QR code image of one record",
                "description": "Streams the PNG; an empty 200 answer when the record has no QR\ncode or the classificator is unknown",
                "operationId": "get_api_qr_code_get",
                "parameters": [
                    {
                        "name": "classificator_name",
                        "in": "path",
                        "description": "terake_object_type code of the record, for example facility, worker, worktype, material, project, shift",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id or uuid of the record",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The PNG image, or an empty body",
                        "content": {
                            "image/png": {}
                        }
                    },
                    "404": {
                        "description": "No such record visible to the caller"
                    }
                }
            }
        },
        "/api/remote-messaging/factory-tap": {
            "post": {
                "tags": [
                    "RemoteMessaging"
                ],
                "summary": "Push a scanned Factory QR code back to the tablet as a tap",
                "description": "The caller has scanned a Factory tablet's changing QR code with the Terake Lite app. The scan is pushed to the tablet as a high-priority FCM data message (terake_action \"tap\", with the caller's worker uuid, the code, the device uuid and the timestamp) that FCM keeps for 20 seconds. The tablet must be of the caller's company; it checks the code itself and starts or stops the caller's work. A 200 means FCM accepted the message, not that the tablet received it.",
                "operationId": "post_api_remote_messaging_factory_tap",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/FactoryTapRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "FCM accepted the message",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "ok": {
                                            "type": "boolean",
                                            "enum": [
                                                true
                                            ]
                                        },
                                        "name": {
                                            "description": "The message name FCM returned",
                                            "type": "string",
                                            "example": "projects/terake-apps/messages/0:1791806400%2a3f91c0e"
                                        },
                                        "sent": {
                                            "description": "The data of the message: terake_action, worker_uuid, qr_code, device_uuid and, when given, ts",
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "device_uuid is missing, the code is not 8 hex digits, or ts is not an integer",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FactoryTapRefusal"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No such device of the caller's company (an unknown, deleted or another company's device answer alike)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FactoryTapRefusal"
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "The device has not registered a Firebase token yet",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FactoryTapRefusal"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "More than 30 taps a minute by the caller; Retry-After tells when to try again",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FactoryTapRefusal"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "The Firebase service account is not configured or Google refused it",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FactoryTapRefusal"
                                }
                            }
                        }
                    },
                    "502": {
                        "description": "FCM rejected the message (a stale token, for one) or could not be reached",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FactoryTapRefusal"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/report/enginehours": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Engine hours and kilometers per facility over a period.",
                "description": "Engine hours and kilometers per facility over a period",
                "externalDocs": {
                    "description": "Help: Engine hours report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/myreportlastreportedenginehours/"
                },
                "operationId": "get_api_report_enginehours",
                "parameters": [
                    {
                        "name": "facility_id",
                        "in": "query",
                        "description": "Filter by facility id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Start of the period, Y-m-d.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "End of the period, Y-m-d.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/myreportlastreportedenginehours",
                        "title": "Engine hours report",
                        "help": {
                            "et": "https://help.terake.com/et/reports/myreportlastreportedenginehours/",
                            "en": "https://help.terake.com/en/reports/myreportlastreportedenginehours/"
                        }
                    }
                ]
            }
        },
        "/api/report/fuelfillings": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Fuel filling report over a period, grouped by the requested dimensions.",
                "externalDocs": {
                    "description": "Help: Refueling (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/fuelfilling/"
                },
                "operationId": "get_api_report_fuelfilling",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "dimension",
                        "in": "query",
                        "description": "Sent either as dimension[]=record&dimension[]=worker or as a comma separated list, dimension=record,worker - the two are equivalent. Report result aggregation base, one or many of: 'record' (record-based, one row per refuelling), 'validate_date' (grouped by date), 'worker', 'facility', 'fuel', 'cost_account'.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Fuel filling report over a period, grouped by the requested dimensions"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/fuelfilling",
                        "title": "Refueling",
                        "help": {
                            "et": "https://help.terake.com/et/reports/fuelfilling/",
                            "en": "https://help.terake.com/en/reports/fuelfilling/"
                        }
                    }
                ]
            }
        },
        "/api/report/inspection_material_usage": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Material used against inspection cases over a period, filterable by worker.",
                "description": "Material used against inspection cases over a period, filterable by worker",
                "externalDocs": {
                    "description": "Help: Material usage (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/vehiclebook/materialusage/"
                },
                "operationId": "get_api_report_inspection_material_usage",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Start of the period, Y-m-d.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "End of the period, Y-m-d.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "facility_id",
                        "in": "query",
                        "description": "Filter by facility id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "spare_part_id",
                        "in": "query",
                        "description": "Filter by the material used as a spare part.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "department_ids",
                        "in": "query",
                        "description": "Comma-separated department ids to restrict the result to.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "dimension",
                        "in": "query",
                        "description": "Sent either as dimension[]=record&dimension[]=worker or as a comma separated list, dimension=record,worker - the two are equivalent. Report result aggregation base, one or many of: 'record' (record-based, one row per material usage), 'validate_date' (grouped by date), 'worker', 'facility', 'material'.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/vehiclebook/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/materialusage/",
                            "en": "https://help.terake.com/en/vehiclebook/materialusage/"
                        }
                    }
                ]
            }
        },
        "/api/report/materialusage": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Material consumption over a period, row by row, with the work it was consumed on.",
                "description": "Material consumption over a period, row by row, with the work it was consumed on",
                "operationId": "get_api_report_materialusage",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/report/agrifieldplannedmaterialusagereport": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Planned material usage per agrifield over a period.",
                "description": "Planned material usage per agrifield over a period",
                "externalDocs": {
                    "description": "Help: Planned material usage (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/afplannedmaterialusage/"
                },
                "operationId": "get_api_report_agrifieldplannedmaterialusagereport",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/afplannedmaterialusage",
                        "title": "Planned material usage",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/afplannedmaterialusage/",
                            "en": "https://help.terake.com/en/fieldbook/afplannedmaterialusage/"
                        }
                    }
                ]
            }
        },
        "/api/report/myreport1": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Worktime summary",
                "description": "Worktime summary. Returns the report rows, each carrying worker_hourly_rate and base_hourly_rate\n\nApproval: only approved work, with no flag to include the rest.",
                "operationId": "get_api_report_myreport1",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The first day of this month by default.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The last day of this month by default.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Query parameter cost_account_id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Query parameter main_facility_id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Query parameter worker_id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Query parameter worktype_id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Worktime summary"
                    },
                    "404": {
                        "description": "Not found"
                    }
                }
            }
        },
        "/api/report/rosterandworktimecomparision": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Rostered hours compared with worked hours, day by day: { date, worker, worktime_hours?, roster_hours?, hours_diff }.",
                "operationId": "get_api_report_rosterandworktimecomparision",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Rostered hours compared with worked hours, day by day"
                    }
                }
            }
        },
        "/api/report/stats/{measured_type}/{dimension_type}": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Hours of one measure broken down by another; { error: Unknown measured_type } with HTTP 200 for other types.",
                "externalDocs": {
                    "description": "Help: Statistics (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/stats/"
                },
                "operationId": "get_api_report_stats",
                "parameters": [
                    {
                        "name": "measured_type",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "dimension_type",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/stats",
                        "title": "Statistics",
                        "help": {
                            "et": "https://help.terake.com/et/my/stats/",
                            "en": "https://help.terake.com/en/my/stats/"
                        }
                    },
                    {
                        "route": "/terake/stats",
                        "title": "Statistics",
                        "help": {
                            "et": "https://help.terake.com/et/terake/stats/",
                            "en": "https://help.terake.com/en/terake/stats/"
                        }
                    }
                ]
            }
        },
        "/api/report/dailystats": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "One row per day of the period: { work_date, work_hours }.",
                "externalDocs": {
                    "description": "Help: Statistics (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/stats/"
                },
                "operationId": "get_api_report_dailystats",
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/stats",
                        "title": "Statistics",
                        "help": {
                            "et": "https://help.terake.com/et/my/stats/",
                            "en": "https://help.terake.com/en/my/stats/"
                        }
                    }
                ]
            }
        },
        "/api/report/summaryreport": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Worked hours, engine hours or kilometers per month, by dimension.",
                "externalDocs": {
                    "description": "Help: Period comparison (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/summaryreport/"
                },
                "operationId": "get_api_report_summaryreport",
                "parameters": [
                    {
                        "name": "data[]",
                        "in": "query",
                        "description": "Figures to report, one or many of: workhours_amount (worked hours), motohours (engine hours), kilometers. Sent as data[]=... Other values are silently ignored, and without the parameter the report is empty.",
                        "required": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    {
                        "name": "dist[]",
                        "in": "query",
                        "description": "Dimensions to group by, one or many of: worker, worktype, main_facility, secondary_facility, cost_account, workobject, crop, pria_payee. Sent as dist[]=...",
                        "required": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    {
                        "name": "period[]",
                        "in": "query",
                        "description": "Months to report on as YYYY-MM, sent as period[]=... Each month becomes one column keyed by the value sent; a month with no figures is left off the row. Without the parameter the report is empty.",
                        "required": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Worked hours, engine hours or kilometers per month, by dimension"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/summaryreport",
                        "title": "Period comparison",
                        "help": {
                            "et": "https://help.terake.com/et/reports/summaryreport/",
                            "en": "https://help.terake.com/en/reports/summaryreport/"
                        }
                    }
                ]
            }
        },
        "/api/report/telemetryreport": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Telemetry report grouped by the requested dimensions.",
                "description": "Telemetry report grouped by the requested dimensions",
                "operationId": "get_api_report_telemetryreport",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "dimension",
                        "in": "query",
                        "description": "Sent either as dimension[]=record&dimension[]=worker or as a comma separated list, dimension=record,worker - the two are equivalent. Report result aggregation base, one or many of: 'record' (record-based, one row per Workdone), 'worker', 'worktype', 'main_facility', 'agrifield', 'cost_account', 'pria_payee', 'crop', 'crop_period'.",
                        "required": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/report/telemetry-workobjects-report": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Telemetry report per workobject, grouped by the requested dimensions.",
                "description": "Telemetry report per workobject, grouped by the requested dimensions",
                "externalDocs": {
                    "description": "Help: Telemetry workobjects report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/telemetry-workobjects/"
                },
                "operationId": "get_api_report_telemetry_workobjects_report",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "dimension",
                        "in": "query",
                        "description": "Sent either as dimension[]=record&dimension[]=worker or as a comma separated list, dimension=record,worker - the two are equivalent. Report result aggregation base, one or many of: 'record' (record-based, one row per Workdone), 'worker', 'worktype', 'main_facility', 'agrifield'.",
                        "required": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/telemetry-workobjects",
                        "title": "Telemetry workobjects report",
                        "help": {
                            "et": "https://help.terake.com/et/reports/telemetry-workobjects/",
                            "en": "https://help.terake.com/en/reports/telemetry-workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/report/transportsummary": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Transport report: { collection: rows }; { error, error_slug } with HTTP 200 over 366 days.",
                "externalDocs": {
                    "description": "Help: Transport (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/transport/"
                },
                "operationId": "get_api_report_transportsummary",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "From. Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "To. Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "dimension",
                        "in": "query",
                        "description": "Sent either as dimension[]=record&dimension[]=worker or as a comma separated list, dimension=record,worker - the two are equivalent. Report result aggregation base, one or many of: 'record' (record-based, one row per transport), 'validate_date' (grouped by date), 'waybill_number', 'from_point', 'to_point', 'material', 'main_facility', 'worker'. 'record' is added automatically when record_workdone_id is given.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "record_workdone_id",
                        "in": "query",
                        "description": "Filter by the workdone the record belongs to.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "transport_id",
                        "in": "query",
                        "description": "Filter by transport id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Transport report"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/transport",
                        "title": "Transport",
                        "help": {
                            "et": "https://help.terake.com/et/reports/transport/",
                            "en": "https://help.terake.com/en/reports/transport/"
                        }
                    }
                ]
            }
        },
        "/api/report/silagetransportsummary": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Transport report: { collection: rows }; { error, error_slug } with HTTP 200 over 366 days.",
                "externalDocs": {
                    "description": "Help: Transport of harvest (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/silagetransport/"
                },
                "operationId": "get_api_report_silagetransportsummary",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "From. Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "To. Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "dimension",
                        "in": "query",
                        "description": "Sent either as dimension[]=record&dimension[]=worker or as a comma separated list, dimension=record,worker - the two are equivalent. Report result aggregation base, one or many of: 'record' (record-based, one row per transport), 'validate_date' (grouped by date), 'waybill_number', 'from_point', 'to_point', 'material', 'main_facility', 'worker'. 'record' is added automatically when record_workdone_id is given.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "record_workdone_id",
                        "in": "query",
                        "description": "Filter by the workdone the record belongs to.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "transport_id",
                        "in": "query",
                        "description": "Filter by transport id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Transport report"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/silagetransport",
                        "title": "Transport of harvest",
                        "help": {
                            "et": "https://help.terake.com/et/reports/silagetransport/",
                            "en": "https://help.terake.com/en/reports/silagetransport/"
                        }
                    }
                ]
            }
        },
        "/api/report/ttkireport/{accounting_date}/{agrifield_id}": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Ttki Report for a date: the TTKI report rows for one accounting date and Workobject.",
                "description": "Ttki Report for a date",
                "operationId": "get_api_report_ttkireport",
                "parameters": [
                    {
                        "name": "accounting_date",
                        "in": "path",
                        "description": "Date as Y-m-d, for example 2026-08-28. The day the report is drawn for.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "agrifield_id",
                        "in": "path",
                        "description": "Workobject id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/report/worktimesummary": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Worked-hour rows for a period, record based or aggregated by dimension",
                "externalDocs": {
                    "description": "Help: Report view (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/report/"
                },
                "operationId": "get_api_report_worktimesummary",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "dimension",
                        "in": "query",
                        "description": "Sent either as dimension[]=record&dimension[]=worker or as a comma separated list, dimension=record,worker - the two are equivalent. Report result aggregation base, one or many of: 'workdone' or 'record' (record-based, one row per Workdone), 'validate_date' (grouped by date), 'worker', 'worktype', 'parent_worktype', 'main_facility', 'secondary_facility', 'maintenance_unit', 'cost_account', 'workobject', 'crop', 'pria_payee_id', 'customer', 'department', 'project'. The same array also carries two flags: 'incl_zero_works' keeps work whose start and stop time are equal, 'include_partner_works' adds work done for partner companies.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "workhours_count_method",
                        "in": "query",
                        "description": "How work that crosses midnight is dated. 1 (default): all hours count on the work's start date. 2: hours are split by calendar day, each part counted on the day it was worked.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by one Worker",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by one Worktype",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by one Main Facility",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "secondary_facility_id",
                        "in": "query",
                        "description": "Filter by one Secondary Facility",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "maintenance_unit_id",
                        "in": "query",
                        "description": "Filter by one Maintenance Unit",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by one Cost Account",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "workobject_id",
                        "in": "query",
                        "description": "Filter by one Workobject",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "crop_id",
                        "in": "query",
                        "description": "Filter by one Crop",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "pria_payee_id",
                        "in": "query",
                        "description": "Filter by one Pria Payee",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "customer_id",
                        "in": "query",
                        "description": "Filter by one Customer",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by one Project",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "department_id",
                        "in": "query",
                        "description": "Filter by one Deparment",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "department_ids",
                        "in": "query",
                        "description": "Filter result by multiple Deparments (comma separated ids)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "worker_group_ids",
                        "in": "query",
                        "description": "Filter result by multiple Worker Groups (comma separated ids)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/report",
                        "title": "Report view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/report/",
                            "en": "https://help.terake.com/en/terake/report/"
                        }
                    }
                ]
            }
        },
        "/api/report/worktime": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Worked-hour rows for a period, record based or aggregated by dimension",
                "operationId": "get_api_report_worktime",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "dimension",
                        "in": "query",
                        "description": "Sent either as dimension[]=record&dimension[]=worker or as a comma separated list, dimension=record,worker - the two are equivalent. Report result aggregation base, one or many of: 'workdone' or 'record' (record-based, one row per Workdone), 'validate_date' (grouped by date), 'worker', 'worktype', 'parent_worktype', 'main_facility', 'secondary_facility', 'maintenance_unit', 'cost_account', 'workobject', 'crop', 'pria_payee_id', 'customer', 'department', 'project'. The same array also carries two flags: 'incl_zero_works' keeps work whose start and stop time are equal, 'include_partner_works' adds work done for partner companies.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "workhours_count_method",
                        "in": "query",
                        "description": "How work that crosses midnight is dated. 1 (default): all hours count on the work's start date. 2: hours are split by calendar day, each part counted on the day it was worked.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by one Worker",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by one Worktype",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by one Main Facility",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "secondary_facility_id",
                        "in": "query",
                        "description": "Filter by one Secondary Facility",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "maintenance_unit_id",
                        "in": "query",
                        "description": "Filter by one Maintenance Unit",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by one Cost Account",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "workobject_id",
                        "in": "query",
                        "description": "Filter by one Workobject",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "crop_id",
                        "in": "query",
                        "description": "Filter by one Crop",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "pria_payee_id",
                        "in": "query",
                        "description": "Filter by one Pria Payee",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "customer_id",
                        "in": "query",
                        "description": "Filter by one Customer",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by one Project",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "department_id",
                        "in": "query",
                        "description": "Filter by one Deparment",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "department_ids",
                        "in": "query",
                        "description": "Filter result by multiple Deparments (comma separated ids)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "worker_group_ids",
                        "in": "query",
                        "description": "Filter result by multiple Worker Groups (comma separated ids)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/report/shiftcount": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Shift count report",
                "operationId": "get_api_report_shiftcount",
                "parameters": [
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by cost account id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "department_ids",
                        "in": "query",
                        "description": "Comma-separated department ids to restrict the result to.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "dimension",
                        "in": "query",
                        "description": "Sent either as dimension[]=record&dimension[]=worker or as a comma separated list, dimension=record,worker - the two are equivalent. Report result aggregation base, one or many of: 'record' (record-based, one row per Workdone), 'validate_date' (grouped by date), 'worktype', 'shift', 'cost_account', 'project'. The same array also carries the flag 'incl_zero_works' keeps work whose start and stop time are equal.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by project id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "shift_id",
                        "in": "query",
                        "description": "Filter by shift id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worker_group_ids",
                        "in": "query",
                        "description": "Comma-separated worker group ids.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by worktype id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/report/accounting": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Worked hours prepared for payroll, record based or aggregated by dimension",
                "operationId": "get_api_report_accounting",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "dimension",
                        "in": "query",
                        "description": "Sent either as dimension[]=record&dimension[]=worker or as a comma separated list, dimension=record,worker - the two are equivalent. Report result aggregation base, one or many of: 'workdone' or 'record' (record-based, one row per Workdone), 'validate_date' (grouped by date), 'worker', 'worktype', 'main_facility', 'secondary_facility', 'cost_account', 'workobject', 'crop', 'pria_payee_id', 'customer', 'provider'. The same array also carries the flag 'incl_zero_works' keeps work whose start and stop time are equal.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by one Worker",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by one Worktype",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by one Main Facility",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by one Cost Account",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "workobject_id",
                        "in": "query",
                        "description": "Filter by one Workobject",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "crop_id",
                        "in": "query",
                        "description": "Filter by one Crop",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "department_ids",
                        "in": "query",
                        "description": "Filter result by multiple Deparments (comma separated ids)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "customer_id",
                        "in": "query",
                        "description": "Filter by customer id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "pria_payee_id",
                        "in": "query",
                        "description": "Filter by PRIA payee id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/report/workunit": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Work units produced over a period - piecework counted alongside hours",
                "externalDocs": {
                    "description": "Help: Workunits (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/workunit/"
                },
                "operationId": "get_api_report_workunit",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "dimension",
                        "in": "query",
                        "description": "Sent either as dimension[]=record&dimension[]=worker or as a comma separated list, dimension=record,worker - the two are equivalent. Report result aggregation base, one or many of: 'workdone' or 'record' (record-based, one row per Workdone), 'validate_date' (grouped by date), 'worker', 'worktype', 'main_facility', 'secondary_facility', 'workobject', 'crop'. The same array also carries the flag 'notapproved' includes work that has not been approved.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by one Worker",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by one Worktype",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by one Main Facility",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "workobject_id",
                        "in": "query",
                        "description": "Filter by one Workobject",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "crop_id",
                        "in": "query",
                        "description": "Filter by one Crop",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "department_ids",
                        "in": "query",
                        "description": "Filter result by multiple Deparments (comma separated ids)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/workunit",
                        "title": "Workunits",
                        "help": {
                            "et": "https://help.terake.com/et/reports/workunit/",
                            "en": "https://help.terake.com/en/reports/workunit/"
                        }
                    }
                ]
            }
        },
        "/api/calendaritems": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Roster and plan rows combined as calendar items.",
                "description": "Returns roster and plan rows combined as calendar items.",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "get_api_calendaritems_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Start datetime. Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted. For workers without ROLE_ADMIN or ROLE_OBSERVER the period starts no earlier than the first day of the month 3 months ago, and a period lying entirely before that comes back empty.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "End datetime. Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Unix timestamp. When given, only items modified at or after it are returned, deleted items included. Holidays are unaffected.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "only_rosteritem",
                        "in": "query",
                        "description": "When given, the response holds the 'rosteritems' key only, the other calendaritem types are not queried at all.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Calendar items by type (serializer groups calendaritem, classificator, owner, auditcolumns, baseattribute)"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    }
                ]
            }
        },
        "/api/calendaritems/{resource_type}": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Calendar items grouped by one resource type - worker, main_facility, secondary_facility",
                "description": "Returns calendar items grouped by one resource type - worker, main_facility, secondary_facility,\nworkobject or customer. An unknown resource type answers 200 with { error: 'Unknown resource_type' }.",
                "externalDocs": {
                    "description": "Help: Roster timeline (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/schedule/"
                },
                "operationId": "get_api_calendaritems_for_resource_type",
                "parameters": [
                    {
                        "name": "resource_type",
                        "in": "path",
                        "description": "worker, worktype, agrifield, main_facility, secondary_facility, project, customer, shift, maintenance_unit or cost_account",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Start datetime. Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "End datetime. Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Unix timestamp. When given, only items modified at or after it are returned, deleted items included. Holidays and project reservations are unaffected, they carry no modification time.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "worker_groups, departments, resources, rosteritems, planitems, holidays, checklists, faultitems, project_reservations, projects"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    }
                ]
            }
        },
        "/api/recurrence_types/{recurrence_type_id}": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Recurrence Type Setup",
                "description": "Get Recurrence Type Setup. Always an empty array.",
                "operationId": "get_api_get_recurrence_type",
                "parameters": [
                    {
                        "name": "recurrence_type_id",
                        "in": "path",
                        "description": "RecurrenceType id (not read)",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "[]"
                    }
                }
            }
        },
        "/api/roster/{calendaritem_id}/recurrence": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Recurrence Setup related to Rosteritem",
                "description": "Recurrence Setup related to Rosteritem. Returns the recurrence of the Rosteritem or Planitem, or\nan empty body when it has none\n\nThe same operation also answers at `GET /api/roster/{calendaritem_id}/recurrence/{recurrence_id}`.",
                "externalDocs": {
                    "description": "Help: Work schedule (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/rostermain/"
                },
                "operationId": "get_api_rosteritems_get_recurrence",
                "parameters": [
                    {
                        "name": "calendaritem_id",
                        "in": "path",
                        "description": "Rosteritem or Planitem id, whichever the route addresses",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The RosteritemRecurrence (serializer groups rosteritem, planitem, auditcolumns), or an empty body",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/RosteritemRecurrence13"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "The item is not found among the caller's company and its partners"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Saves the recurrence of a Rosteritem or Planitem. A new recurrence generates the recurring\nevents; an existing one has events added.",
                "description": "The same operation also answers at `PUT /api/roster/{calendaritem_id}/recurrence/{recurrence_id}`.",
                "externalDocs": {
                    "description": "Help: Work schedule (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/rostermain/"
                },
                "operationId": "put_api_rosteritems_put_recurrence",
                "parameters": [
                    {
                        "name": "calendaritem_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Creates or modifies the recurrence of a Rosteritem or Planitem",
                "description": "Saves the recurrence of a Rosteritem or Planitem of the caller's company. A new recurrence generates the recurring\nevents (at most 30 per call, never beyond three years ahead); an existing one has missing events added.",
                "operationId": "post_api_rosteritems_post_recurrence",
                "parameters": [
                    {
                        "name": "calendaritem_id",
                        "in": "path",
                        "description": "Rosteritem or Planitem id, whichever the route addresses",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "tz": {
                                        "description": "IANA timezone name the recurrence dates are interpreted in, for example Europe/Tallinn",
                                        "type": "string"
                                    },
                                    "to_time": {
                                        "description": "Last day of the recurrence",
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "recurrence_type": {
                                        "description": "RecurrenceType { id: N }; required for a new recurrence",
                                        "type": "object"
                                    },
                                    "custom_rule_json": {
                                        "description": "weekday_of_month (1-5) and weekday (1-7) of a monthly or yearly rule",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The RosteritemRecurrence (serializer groups rosteritem, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/RosteritemRecurrence13"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/roster/{calendaritem_id}/recurrence/{recurrence_id}": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Recurrence Setup related to Rosteritem",
                "description": "Recurrence Setup related to Rosteritem. Returns the recurrence of the Rosteritem or Planitem, or\nan empty body when it has none",
                "operationId": "get_api_roster_get_recurrence_alt",
                "parameters": [
                    {
                        "name": "calendaritem_id",
                        "in": "path",
                        "description": "Rosteritem or Planitem id, whichever the route addresses",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "recurrence_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The RosteritemRecurrence (serializer groups rosteritem, planitem, auditcolumns), or an empty body",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/RosteritemRecurrence13"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "The item is not found among the caller's company and its partners"
                    }
                },
                "x-alias-of": "get_api_rosteritems_get_recurrence"
            },
            "put": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Saves the recurrence of a Rosteritem or Planitem. A new recurrence generates the recurring\nevents; an existing one has events added.",
                "operationId": "put_api_rosteritems_put_recurrence_alt",
                "parameters": [
                    {
                        "name": "calendaritem_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "recurrence_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-alias-of": "put_api_rosteritems_put_recurrence"
            }
        },
        "/api/plans/{calendaritem_id}/recurrence": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Recurrence Setup related to Rosteritem",
                "description": "Recurrence Setup related to Rosteritem. Returns the recurrence of the Rosteritem or Planitem, or\nan empty body when it has none\n\nThe same operation also answers at `GET /api/plans/{calendaritem_id}/recurrence/{recurrence_id}`.",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "get_api_plans_get_recurrence",
                "parameters": [
                    {
                        "name": "calendaritem_id",
                        "in": "path",
                        "description": "Rosteritem or Planitem id, whichever the route addresses",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The RosteritemRecurrence (serializer groups rosteritem, planitem, auditcolumns), or an empty body",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/RosteritemRecurrence13"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "The item is not found among the caller's company and its partners"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Saves the recurrence of a Rosteritem or Planitem. A new recurrence generates the recurring\nevents; an existing one has events added.",
                "description": "The same operation also answers at `PUT /api/plans/{calendaritem_id}/recurrence/{recurrence_id}`.",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "put_api_plans_put_recurrence",
                "parameters": [
                    {
                        "name": "calendaritem_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Creates or modifies the recurrence of a Rosteritem or Planitem",
                "description": "Saves the recurrence of a Rosteritem or Planitem of the caller's company. A new recurrence generates the recurring\nevents (at most 30 per call, never beyond three years ahead); an existing one has missing events added.",
                "externalDocs": {
                    "description": "Help: Tasks report (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/list/"
                },
                "operationId": "post_api_plans_post_recurrence",
                "parameters": [
                    {
                        "name": "calendaritem_id",
                        "in": "path",
                        "description": "Rosteritem or Planitem id, whichever the route addresses",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "tz": {
                                        "description": "IANA timezone name the recurrence dates are interpreted in, for example Europe/Tallinn",
                                        "type": "string"
                                    },
                                    "to_time": {
                                        "description": "Last day of the recurrence",
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "recurrence_type": {
                                        "description": "RecurrenceType { id: N }; required for a new recurrence",
                                        "type": "object"
                                    },
                                    "custom_rule_json": {
                                        "description": "weekday_of_month (1-5) and weekday (1-7) of a monthly or yearly rule",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The RosteritemRecurrence (serializer groups rosteritem, planitem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/RosteritemRecurrence13"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/plans/{calendaritem_id}/recurrence/{recurrence_id}": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Recurrence Setup related to Rosteritem",
                "description": "Recurrence Setup related to Rosteritem. Returns the recurrence of the Rosteritem or Planitem, or\nan empty body when it has none",
                "operationId": "get_api_plans_get_recurrence_alt",
                "parameters": [
                    {
                        "name": "calendaritem_id",
                        "in": "path",
                        "description": "Rosteritem or Planitem id, whichever the route addresses",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "recurrence_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The RosteritemRecurrence (serializer groups rosteritem, planitem, auditcolumns), or an empty body",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/RosteritemRecurrence13"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "The item is not found among the caller's company and its partners"
                    }
                },
                "x-alias-of": "get_api_plans_get_recurrence"
            },
            "put": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Saves the recurrence of a Rosteritem or Planitem. A new recurrence generates the recurring\nevents; an existing one has events added.",
                "operationId": "put_api_plans_put_recurrence_alt",
                "parameters": [
                    {
                        "name": "calendaritem_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "recurrence_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-alias-of": "put_api_plans_put_recurrence"
            }
        },
        "/api/roster/clear": {
            "put": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Clears the roster of one worker for a single day",
                "description": "Clears the roster of one worker for a single day: every roster item starting that day is deleted, and so is the work recorded for it. Returns [\"OK\"]",
                "externalDocs": {
                    "description": "Help: Work schedule (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/rostermain/"
                },
                "operationId": "put_api_roster_clear_put",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "worker_id": {
                                        "description": "Worker whose roster is cleared.",
                                        "type": "integer"
                                    },
                                    "year": {
                                        "type": "integer"
                                    },
                                    "month": {
                                        "type": "integer"
                                    },
                                    "day": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "[\"OK\"]"
                    },
                    "404": {
                        "description": "The worker is not of the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            }
        },
        "/api/roster/addworkorder/{rosteritem_id}": {
            "put": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Creates a Planitem (work order) from the Rosteritem named in the URL, copying its times",
                "description": "Creates a Planitem (work order) from the Rosteritem named in the URL, copying its times,\nworktype and Workobject. Does not have a request body. An empty body when the item's worker is of another company.",
                "externalDocs": {
                    "description": "Help: Work schedule (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/rostermain/"
                },
                "operationId": "put_api_roster_addworkorder_put",
                "parameters": [
                    {
                        "name": "rosteritem_id",
                        "in": "path",
                        "description": "Rosteritem id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Planitem (serializer groups default, rosteritem)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Planitem20"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            }
        },
        "/api/roster/add": {
            "put": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Writes roster items across the selected workers and dates",
                "description": "Handles writes roster items across the selected workers and dates",
                "externalDocs": {
                    "description": "Help: Work schedule (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/rostermain/"
                },
                "operationId": "put_api_roster_add_put",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "month": {
                                        "description": "Month the roster edit applies to.",
                                        "type": "integer"
                                    },
                                    "year": {
                                        "description": "Year the roster edit applies to.",
                                        "type": "integer"
                                    },
                                    "selected_dates": {
                                        "description": "Days to write roster items for. Ignored when selection_type is 2, which derives them from selected_individuals.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "selected_worker_ids": {
                                        "description": "Workers to write roster items for. Ignored when selection_type is 2.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "selected_individuals": {
                                        "description": "Per-worker day selection, keyed by worker id. Used when selection_type is 2.",
                                        "type": "object"
                                    },
                                    "selection_type": {
                                        "description": "2 takes the selection from selected_individuals, anything else uses selected_dates with selected_worker_ids.",
                                        "type": "integer"
                                    },
                                    "save_mode": {
                                        "description": "2 keeps the roster items already on those days; anything else (default 1) clears the days first.",
                                        "type": "integer"
                                    },
                                    "editable": {
                                        "description": "The roster item template applied to every selected slot - clock times as fromClock and toClock or multidate_start_clock and multidate_stop_clock, pause as pause_minutes in HH:MM or as pauseHours plus pauseMinutes, plus the relations to store.",
                                        "type": "object"
                                    },
                                    "delete": {
                                        "description": "Removes the roster items in the selection instead of writing them.",
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Array of Rosteritems (serializer groups owner, rosteritem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Rosteritem5"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            }
        },
        "/api/roster/createworkdones": {
            "put": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Creates Workdones from the selected roster items",
                "description": "Creates Workdones from the selected roster items (none for an item that has one). Returns [\"OK\"]",
                "externalDocs": {
                    "description": "Help: Roster approval (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/scheduleapproval/"
                },
                "operationId": "put_api_roster_createworkdones_put",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "selectedRosteritemIds": {
                                        "description": "Roster items to create work from.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "[\"OK\"]"
                    },
                    "404": {
                        "description": "A roster item not found among the caller's company and its partners"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/scheduleapproval",
                        "title": "Roster approval",
                        "help": {
                            "et": "https://help.terake.com/et/plans/scheduleapproval/",
                            "en": "https://help.terake.com/en/plans/scheduleapproval/"
                        }
                    }
                ]
            }
        },
        "/api/rosterday": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Roster for a single day",
                "description": "Roster for a single day. myself=1 limits it to the authenticated worker. Returns the roster rows for one day, by worker id: { roster: [...], plan: [...] }",
                "externalDocs": {
                    "description": "Help: Work schedule (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/rostermain/"
                },
                "operationId": "get_api_rosterday_get_collection",
                "parameters": [
                    {
                        "name": "date",
                        "in": "query",
                        "description": "Startpoint. Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "myself",
                        "in": "query",
                        "description": "Truthy limits the result to the authenticated worker.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Roster and plan rows of the day by worker id"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            }
        },
        "/api/rosteryear": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Roster for a whole year, by year",
                "description": "Roster for a whole year, by year. Returns an object by worker id with the scheduled hours per month number and their sum.",
                "externalDocs": {
                    "description": "Help: Work schedule (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/rostermain/"
                },
                "operationId": "get_api_rosteryear_get_collection",
                "parameters": [
                    {
                        "name": "year",
                        "in": "query",
                        "description": "Four-digit year. Defaults to the current year.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ worker_id: { month_number: hours, sum: hours } }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            }
        },
        "/api/rostermain": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Roster for one month, by year and month",
                "description": "Roster for one month, by year and month. myself=1 limits it to the authenticated worker. Returns the roster grid for the period.",
                "externalDocs": {
                    "description": "Help: Work schedule (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/rostermain/"
                },
                "operationId": "get_api_rostermain_get_collection",
                "parameters": [
                    {
                        "name": "year",
                        "in": "query",
                        "description": "Four-digit year. Defaults to the current year.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "month",
                        "in": "query",
                        "description": "Month 1-12. Defaults to the current month.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "myself",
                        "in": "query",
                        "description": "Truthy limits the result to the authenticated worker.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "main_data, detail_data, item_data, vacation_days, heading, display_periods, days, active_month_days, month, year, workers, me, department_colleagues, other_colleagues"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            }
        },
        "/api/rosteritems/{id}": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Rosteritem by ID or UUID",
                "description": "Returns Rosteritem by ID: the company's own, or a partner's that names the company as consumer. An empty body (200) when there is none.",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "get_api_rosteritems_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Rosteritem id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Rosteritem (serializer groups rosteritem, workdone, owner, auditcolumns), or an empty body",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Rosteritem6"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Creates or modifies (if id is set) a Rosteritem: a Scheduled Work entry or an absence\n(Vacation, Sickness, Away, Day off, Study leave, Parental leave, Without pay). Returns an\narray of items. The Terake mobile app posts vacations here.",
                "description": "The same operation also answers at `POST /api/rosteritems/{id}`.",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "put_api_rosteritems_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Creates or modifies a Rosteritem (Scheduled Work or an absence). Returns an array of items",
                "description": "Creates or modifies (if id is set) a Rosteritem: a Scheduled Work entry or an absence (Vacation,\nSickness, Away, Day off, Study leave, Parental leave, Without pay).\n\nScheduled Work (roster_type 1) accepts the full field set, and several workers, agrifields and main facilities at once: one item is created per combination, and an item over several days is split into one item per day. Absence types accept exactly one resource (worker, worktype, main_facility, agrifield, project, customer, cost_account or maintenance_unit, the first one present wins), the times rounded to whole days and the description; every other field is ignored for them.",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "post_api_rosteritems_post",
                "parameters": [
                    {
                        "name": "drag_n_drop_resource",
                        "in": "query",
                        "description": "worker, agrifield or main_facility: only that resource is written",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "planned_start_time": {
                                        "description": "Start of the item. Example '2022-07-03T00:00:00+03:00'. For absence types the time part is dropped and the day starts at 00:00.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "planned_stop_time": {
                                        "description": "End of the item. For absence types it is rounded up to 00:00 of the next day. For Scheduled Work an end that is not after the start is moved one day forward.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "roster_type": {
                                        "description": "{ id: N }: 1 Scheduled Work (the default), 2 Vacation, 3 Sickness, 4 Away, 14 Day off, 15 Study leave, 16 Parental leave, 17 Without pay. A user without admin, approver, observer or agronomist role may create Scheduled Work only for themselves; other workers give 403.",
                                        "type": "object"
                                    },
                                    "roster_status": {
                                        "description": "{ id: N }: 1 open, 2 taken, 3 assigned (the default), 4 reopen",
                                        "type": "object"
                                    },
                                    "worker": {
                                        "description": "Worker as { id: N }; for Scheduled Work also an array of them",
                                        "type": "object"
                                    },
                                    "worker_ids": {
                                        "description": "Scheduled Work only; takes precedence over worker",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "agrifield": {
                                        "description": "Agrifield as { id: N }; for Scheduled Work also an array",
                                        "type": "object"
                                    },
                                    "main_facility": {
                                        "description": "Facility as { id: N }; for Scheduled Work also an array",
                                        "type": "object"
                                    },
                                    "worktype": {
                                        "description": "Worktype as { id: N }. When creating Scheduled Work without it, the worker's own worktype is used.",
                                        "type": "object"
                                    },
                                    "pause_minutes": {
                                        "description": "Pause as HH:MM or HH:MM:SS, or seconds",
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Array of Rosteritems (serializer groups owner, rosteritem, calendaritem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Rosteritem7"
                                    }
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Scheduled Work for another worker by a caller without the privileged roles"
                    },
                    "404": {
                        "description": "An absence without any resource, or an unknown id"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    },
                    {
                        "route": "/terake/worktimetable",
                        "title": "Worktime table",
                        "help": {
                            "et": "https://help.terake.com/et/terake/worktimetable/",
                            "en": "https://help.terake.com/en/terake/worktimetable/"
                        }
                    }
                ],
                "x-alias-of": "put_api_rosteritems_put"
            },
            "delete": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Delete Rosteritem by ID or UUID",
                "description": "Deletes Rosteritem by ID or UUID. Returns the deleted Rosteritem.",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "delete_api_rosteritems_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Rosteritem id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Rosteritem (serializer groups rosteritem, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Rosteritem8"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Rosteritem"
                    },
                    "404": {
                        "description": "Not found among the caller's company and its partners"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    },
                    {
                        "route": "/terake/worktimetable",
                        "title": "Worktime table",
                        "help": {
                            "et": "https://help.terake.com/et/terake/worktimetable/",
                            "en": "https://help.terake.com/en/terake/worktimetable/"
                        }
                    }
                ]
            }
        },
        "/api/rosteritems": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Rosteritem collection for the caller's company.",
                "description": "Returns rosteritem collection for the caller's company.",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "get_api_rosteritems_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to 60 days ago.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to 60 days ahead.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by worktype",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by main facility",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by cost account",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "selfonly",
                        "in": "query",
                        "description": "Only authenticated user own objects (0|1)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "roster_only",
                        "in": "query",
                        "description": "Truthy returns roster rows only, skipping absences.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "groups",
                        "in": "query",
                        "description": "Narrows the response to some of: rosteritem, owner, auditcolumns, and rosteritem_list (the lean list row) where the entity model carries it.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Rosteritems (serializer groups rosteritem, owner, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Rosteritem9"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Creates or modifies a Rosteritem (Scheduled Work or an absence). Returns an array of items",
                "description": "Creates or modifies (if id is set) a Rosteritem: a Scheduled Work entry or an absence (Vacation,\nSickness, Away, Day off, Study leave, Parental leave, Without pay).\n\nScheduled Work (roster_type 1) accepts the full field set, and several workers, agrifields and main facilities at once: one item is created per combination, and an item over several days is split into one item per day. Absence types accept exactly one resource (worker, worktype, main_facility, agrifield, project, customer, cost_account or maintenance_unit, the first one present wins), the times rounded to whole days and the description; every other field is ignored for them.",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "post_api_rosteritems_post_new",
                "parameters": [
                    {
                        "name": "drag_n_drop_resource",
                        "in": "query",
                        "description": "worker, agrifield or main_facility: only that resource is written",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "planned_start_time": {
                                        "description": "Start of the item. Example '2022-07-03T00:00:00+03:00'. For absence types the time part is dropped and the day starts at 00:00.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "planned_stop_time": {
                                        "description": "End of the item. For absence types it is rounded up to 00:00 of the next day. For Scheduled Work an end that is not after the start is moved one day forward.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "roster_type": {
                                        "description": "{ id: N }: 1 Scheduled Work (the default), 2 Vacation, 3 Sickness, 4 Away, 14 Day off, 15 Study leave, 16 Parental leave, 17 Without pay. A user without admin, approver, observer or agronomist role may create Scheduled Work only for themselves; other workers give 403.",
                                        "type": "object"
                                    },
                                    "roster_status": {
                                        "description": "{ id: N }: 1 open, 2 taken, 3 assigned (the default), 4 reopen",
                                        "type": "object"
                                    },
                                    "worker": {
                                        "description": "Worker as { id: N }; for Scheduled Work also an array of them",
                                        "type": "object"
                                    },
                                    "worker_ids": {
                                        "description": "Scheduled Work only; takes precedence over worker",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "agrifield": {
                                        "description": "Agrifield as { id: N }; for Scheduled Work also an array",
                                        "type": "object"
                                    },
                                    "main_facility": {
                                        "description": "Facility as { id: N }; for Scheduled Work also an array",
                                        "type": "object"
                                    },
                                    "worktype": {
                                        "description": "Worktype as { id: N }. When creating Scheduled Work without it, the worker's own worktype is used.",
                                        "type": "object"
                                    },
                                    "pause_minutes": {
                                        "description": "Pause as HH:MM or HH:MM:SS, or seconds",
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Array of Rosteritems (serializer groups owner, rosteritem, calendaritem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Rosteritem7"
                                    }
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Scheduled Work for another worker by a caller without the privileged roles"
                    },
                    "404": {
                        "description": "An absence without any resource, or an unknown id"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            }
        },
        "/api/rosteritems/{id}/mark-as-done": {
            "post": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Creates a Workdone from a Rosteritem and marks the item done",
                "description": "Creates new Workdone from Rosteritem (none when one exists already). Returns the Rosteritem.\n\nThe same operation also answers at `POST /api/roster/{id}/mark-as-done`.",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "post_api_rosteritems_mark_as_done_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Rosteritem id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Rosteritem (serializer groups owner, rosteritem, calendaritem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Rosteritem7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found among the caller's company and its partners"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            }
        },
        "/api/roster/{id}/mark-as-done": {
            "post": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Creates a Workdone from a Rosteritem and marks the item done",
                "description": "Creates new Workdone from Rosteritem (none when one exists already). Returns the Rosteritem.",
                "operationId": "post_api_roster_mark_as_done_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Rosteritem id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Rosteritem (serializer groups owner, rosteritem, calendaritem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Rosteritem7"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found among the caller's company and its partners"
                    }
                },
                "x-alias-of": "post_api_rosteritems_mark_as_done_post"
            }
        },
        "/api/rosteritem/setstatus/{newstatus}": {
            "post": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Changes the status of a Rosteritem - a worker may take or reopen one",
                "description": "Changes the status of a Rosteritem - a worker may take or reopen one, a foreman may also assign it. Returns the calendar items whose status changed\n\nThe same operation also answers at `POST /api/calendaritem/setstatus/{newstatus}`.",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "post_api_rosteritem_status_change",
                "parameters": [
                    {
                        "name": "newstatus",
                        "in": "path",
                        "description": "open, taken, assigned, reopen (a roster status name) or deleted",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "rosteritem_ids": {
                                        "description": "Roster items whose status is changed",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "planitem_ids": {
                                        "description": "Plan items deleted (newstatus deleted only)",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Array of Rosteritems and Planitems (serializer groups owner, rosteritem, calendaritem, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Planitem22"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    }
                ]
            }
        },
        "/api/calendaritem/setstatus/{newstatus}": {
            "post": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Changes the status of a Rosteritem - a worker may take or reopen one",
                "description": "Changes the status of a Rosteritem - a worker may take or reopen one, a foreman may also assign it. Returns the calendar items whose status changed",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "post_api_calendaritem_status_change",
                "parameters": [
                    {
                        "name": "newstatus",
                        "in": "path",
                        "description": "open, taken, assigned, reopen (a roster status name) or deleted",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "rosteritem_ids": {
                                        "description": "Roster items whose status is changed",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "planitem_ids": {
                                        "description": "Plan items deleted (newstatus deleted only)",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Array of Rosteritems and Planitems (serializer groups owner, rosteritem, calendaritem, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Planitem22"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    }
                ],
                "x-alias-of": "post_api_rosteritem_status_change"
            }
        },
        "/api/calendaritems/copyormove": {
            "post": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Copies or moves the listed Rosteritems and Planitems by a day offset and/or onto another resource",
                "description": "Copies or moves the listed Rosteritems and Planitems by a day offset and/or onto another\nresource. Returns the resulting calendar items, or an empty array when neither days_offset nor\nchange_resource is set",
                "externalDocs": {
                    "description": "Help: My calendar (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/roster/"
                },
                "operationId": "post_api_calendaritems_put_copyormove",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "action": {
                                        "description": "copy to duplicate the items, move to relocate them. Defaults to copy.",
                                        "type": "string"
                                    },
                                    "planitem_ids": {
                                        "description": "Plan items to copy or move.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "rosteritem_ids": {
                                        "description": "Roster items to copy or move.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "days_offset": {
                                        "description": "Number of days to shift the items by (30: one month). Defaults to 0.",
                                        "type": "integer"
                                    },
                                    "change_resource": {
                                        "description": "Put the items on the resource given in the body (worker, worktype, agrifield, main_facility, project, customer, maintenance_unit, provider).",
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Array of Rosteritems and Planitems (serializer groups owner, rosteritem, calendaritem, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Planitem23"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    }
                ]
            }
        },
        "/api/rosteritems-for-approval": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Rosteritems awaiting approval",
                "description": "Rosteritems awaiting approval. show_done=1 also returns those already handled.",
                "externalDocs": {
                    "description": "Help: Roster approval (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/scheduleapproval/"
                },
                "operationId": "get_api_rosteritems_for_approval_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Startpoint. Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Endpoint. Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by cost account id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "department_ids",
                        "in": "query",
                        "description": "Comma-separated department ids to restrict the result to.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by main facility id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by project id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "show_done",
                        "in": "query",
                        "description": "Truthy also returns rows already marked done.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by worktype id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of { id, from_time, to_time, duration_seconds, pause_minutes, worker, worktype, main_facility, cost_account, project, agrifield, workdone }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/scheduleapproval",
                        "title": "Roster approval",
                        "help": {
                            "et": "https://help.terake.com/et/plans/scheduleapproval/",
                            "en": "https://help.terake.com/en/plans/scheduleapproval/"
                        }
                    }
                ]
            }
        },
        "/api/vacations": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Vacations and absences over a period.",
                "description": "Returns Vacations or Absences collection",
                "externalDocs": {
                    "description": "Help: Vacations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/vacations/"
                },
                "operationId": "get_api_vacations_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "selfonly",
                        "in": "query",
                        "description": "Only authenticated user own objects (0|1)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Rosteritems (serializer groups vacation, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Rosteritem10"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    }
                ]
            }
        },
        "/api/absences": {
            "get": {
                "tags": [
                    "Rosters"
                ],
                "summary": "Vacations and absences over a period.",
                "description": "Returns Vacations or Absences collection",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "get_api_absences_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "selfonly",
                        "in": "query",
                        "description": "Only authenticated user own objects (0|1)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Rosteritems (serializer groups vacation, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Rosteritem10"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    }
                ]
            }
        },
        "/api/search/{classificator_type}": {
            "get": {
                "tags": [
                    "Classificators"
                ],
                "summary": "Objects of one classificator type for filling drop-down lists",
                "externalDocs": {
                    "description": "Help: Dashboard (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/realtime/dash/"
                },
                "operationId": "get_api_search_classificators_all",
                "parameters": [
                    {
                        "name": "q",
                        "in": "query",
                        "description": "Search text matched against the name (the full name for workobjects, facilities, customers' contacts and a few others).",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "description": "Rows to return, default 200, at most 1000. has_more tells whether there are more.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Rows to skip, from 0.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "order",
                        "in": "query",
                        "description": "id or updated_at_timestamp instead of the default order by name.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "updated_at_timestamp"
                            ]
                        }
                    },
                    {
                        "name": "id",
                        "in": "query",
                        "description": "Filter by record id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Unix timestamp: rows modified since then, archived and deleted ones included (with is_archived and is_deleted).",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "customer_id",
                        "in": "query",
                        "description": "Customer id: that customer's rows (or the rows without a customer when it has none); required for customer_person.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "facility_id",
                        "in": "query",
                        "description": "Facility id (inspection_task).",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "workobject_id",
                        "in": "query",
                        "description": "Workobject id (inspection_task, cadastre).",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Worker id: the projects that worker is assigned to today (project).",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Department id: narrows department-bound types to it and its sub-departments.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Start of the period (holiday), default 60 days ago.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "End of the period (holiday), default in 60 days.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "classificator_type",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/my/startwork",
                        "title": "Start work",
                        "help": {
                            "et": "https://help.terake.com/et/my/startwork/",
                            "en": "https://help.terake.com/en/my/startwork/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    }
                ]
            }
        },
        "/api/search/{classificator_type}/{q}": {
            "get": {
                "tags": [
                    "Classificators"
                ],
                "summary": "Objects of one classificator type matching a search text",
                "operationId": "get_api_search_classificators",
                "parameters": [
                    {
                        "name": "limit",
                        "in": "query",
                        "description": "Rows to return, default 200, at most 1000. has_more tells whether there are more.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Rows to skip, from 0.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "order",
                        "in": "query",
                        "description": "id or updated_at_timestamp instead of the default order by name.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "updated_at_timestamp"
                            ]
                        }
                    },
                    {
                        "name": "customer_id",
                        "in": "query",
                        "description": "Customer id (see the route without {q}).",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Department id: narrows department-bound types to it and its sub-departments.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "classificator_type",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "q",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/shifts": {
            "get": {
                "tags": [
                    "Shifts"
                ],
                "summary": "All Shifts list",
                "description": "The company's shifts that are neither deleted nor archived, by name.",
                "externalDocs": {
                    "description": "Help: Shifts (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/shifts/"
                },
                "operationId": "get_api_shifts_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived shifts and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Shift (serializer groups rosteritem, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Shift6"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/shifts",
                        "title": "Shifts",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/shifts/",
                            "en": "https://help.terake.com/en/admin/main/shifts/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Shifts"
                ],
                "summary": "Create Shift",
                "description": "Creates a Shift, or modifies the one the body names by \"id\" or \"uuid\". A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Shifts (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/shifts/"
                },
                "operationId": "post_api_shift_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "short_name": {
                                        "description": "At most 3 characters",
                                        "type": "string"
                                    },
                                    "from_time": {
                                        "description": "Clock time the shift starts, as HH:MM, for example 08:00. Stored as text, at most 8 characters.",
                                        "type": "string"
                                    },
                                    "to_time": {
                                        "description": "Clock time the shift ends, as HH:MM, for example 16:30. Stored as text, at most 8 characters.",
                                        "type": "string"
                                    },
                                    "pause_minutes": {
                                        "description": "Pause as HH:MM (or a number of seconds)",
                                        "type": "string"
                                    },
                                    "is_deleted": {
                                        "type": "boolean"
                                    },
                                    "color_code": {
                                        "description": "{code} of a colour, for example {\"code\": \"#000080\"}; null clears it",
                                        "type": "object"
                                    },
                                    "worktype": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "agrifield": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "main_facility": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "secondary_facility": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "maintenance_unit": {
                                        "description": "{id} of a facility; null clears it",
                                        "type": "object"
                                    },
                                    "cost_account": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "project": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "department": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "description": "Id in another system",
                                        "type": "string"
                                    },
                                    "qr_image": {
                                        "description": "{qr_text}; on PUT its absence removes the QR image",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Shift (serializer groups rosteritem, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Shift6"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/shifts",
                        "title": "Shifts",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/shifts/",
                            "en": "https://help.terake.com/en/admin/main/shifts/"
                        }
                    }
                ]
            }
        },
        "/api/shifts/{id}": {
            "get": {
                "tags": [
                    "Shifts"
                ],
                "summary": "Get Shift",
                "description": "Returns Shift by ID or UUID.",
                "externalDocs": {
                    "description": "Help: Shifts (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/shifts/"
                },
                "operationId": "get_api_shifts_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Shift id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Shift uuid, instead of the id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Shift (serializer groups rosteritem, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Shift6"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/shifts",
                        "title": "Shifts",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/shifts/",
                            "en": "https://help.terake.com/en/admin/main/shifts/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Shifts"
                ],
                "summary": "Update Shift",
                "description": "Modifies a Shift. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone, except qr_image, whose absence removes the QR image.",
                "externalDocs": {
                    "description": "Help: Shifts (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/shifts/"
                },
                "operationId": "put_api_shifts_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Shift id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "short_name": {
                                        "description": "At most 3 characters",
                                        "type": "string"
                                    },
                                    "from_time": {
                                        "description": "Clock time the shift starts, as HH:MM, for example 08:00. Stored as text, at most 8 characters.",
                                        "type": "string"
                                    },
                                    "to_time": {
                                        "description": "Clock time the shift ends, as HH:MM, for example 16:30. Stored as text, at most 8 characters.",
                                        "type": "string"
                                    },
                                    "pause_minutes": {
                                        "description": "Pause as HH:MM (or a number of seconds)",
                                        "type": "string"
                                    },
                                    "is_deleted": {
                                        "type": "boolean"
                                    },
                                    "color_code": {
                                        "description": "{code} of a colour, for example {\"code\": \"#000080\"}; null clears it",
                                        "type": "object"
                                    },
                                    "worktype": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "agrifield": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "main_facility": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "secondary_facility": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "maintenance_unit": {
                                        "description": "{id} of a facility; null clears it",
                                        "type": "object"
                                    },
                                    "cost_account": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "project": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "department": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "description": "Id in another system",
                                        "type": "string"
                                    },
                                    "qr_image": {
                                        "description": "{qr_text}; on PUT its absence removes the QR image",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Shift (serializer groups rosteritem, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Shift6"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Shift"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/shifts",
                        "title": "Shifts",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/shifts/",
                            "en": "https://help.terake.com/en/admin/main/shifts/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Shifts"
                ],
                "summary": "Delete Shift",
                "description": "Deletes Shift by ID or UUID (marks it deleted and archived, removes its QR image). Returns the deleted Shift.",
                "externalDocs": {
                    "description": "Help: Shifts (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/shifts/"
                },
                "operationId": "delete_api_shifts_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Shift id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Shift (serializer groups rosteritem, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Shift6"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Shift"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/shifts",
                        "title": "Shifts",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/shifts/",
                            "en": "https://help.terake.com/en/admin/main/shifts/"
                        }
                    }
                ]
            }
        },
        "/api/signeddocuments": {
            "get": {
                "tags": [
                    "SignedDocuments"
                ],
                "summary": "SignedDocument collection",
                "description": "The company's documents signed in the period and linked to a workdone, oldest first, one row per linked workdone. The response has a fixed structure and may not include every field these records carry elsewhere in the API.",
                "externalDocs": {
                    "description": "Help: Signed documents (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/signeddocuments/"
                },
                "operationId": "get_api_signeddocuments_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Start of the period, Y-m-d. Defaults to the first day of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "End of the period, Y-m-d (included). Defaults to the last day of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by worktype id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by main facility id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by cost account id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by project id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of { id, signer_name, signing_time, worker { fullname }, workdone_document { workdone { id, worktype, main_facility, cost_account, project, customer, agrifield, planitem } } }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/signeddocuments",
                        "title": "Signed documents",
                        "help": {
                            "et": "https://help.terake.com/et/admin/signeddocuments/",
                            "en": "https://help.terake.com/en/admin/signeddocuments/"
                        }
                    }
                ]
            }
        },
        "/api/signeddocuments-emailreport/{uuid}/{token}": {
            "get": {
                "tags": [
                    "SignedDocuments"
                ],
                "summary": "SignedDocument by UUID and Access Token",
                "description": "The signed document for the public e-mailed report page: the share token of the report in the path, no worker credential needed. Returns { id, uuid, signer_name, signing_time, content, signature_str }",
                "operationId": "get_api_signeddocuments_emailreport_get",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "SignedDocument uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "token",
                        "in": "path",
                        "description": "Share token of the e-mailed report",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ id (always 1), uuid, signer_name, signing_time, content, signature_str }"
                    },
                    "401": {
                        "description": "The token is no valid report share token"
                    }
                }
            }
        },
        "/api/signeddocuments/{id}": {
            "get": {
                "tags": [
                    "SignedDocuments"
                ],
                "summary": "SignedDocument by ID or UUID",
                "description": "Returns SignedDocument by ID or UUID",
                "externalDocs": {
                    "description": "Help: Signed documents (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/signeddocuments/"
                },
                "operationId": "get_api_signeddocuments_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "SignedDocument id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The SignedDocument (serializer groups default, signeddocuments)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SignedDocument"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/signeddocuments",
                        "title": "Signed documents",
                        "help": {
                            "et": "https://help.terake.com/et/admin/signeddocuments/",
                            "en": "https://help.terake.com/en/admin/signeddocuments/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "SignedDocuments"
                ],
                "summary": "Delete SignedDocument by ID or UUID",
                "description": "Marks the SignedDocument deleted (an administrator of the company, or whom the entity allows)",
                "externalDocs": {
                    "description": "Help: Signed documents (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/signeddocuments/"
                },
                "operationId": "delete_api_signeddocuments_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "SignedDocument id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted SignedDocument (serializer groups default, signeddocuments)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SignedDocument"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Access denied"
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/signeddocuments",
                        "title": "Signed documents",
                        "help": {
                            "et": "https://help.terake.com/et/admin/signeddocuments/",
                            "en": "https://help.terake.com/en/admin/signeddocuments/"
                        }
                    }
                ]
            }
        },
        "/api/soilsamples": {
            "get": {
                "tags": [
                    "SoilSamples"
                ],
                "summary": "SoilSample collection",
                "description": "The company's soil samples that are not deleted, by id.",
                "externalDocs": {
                    "description": "Help: Soil samples (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/soilsample/"
                },
                "operationId": "get_api-soil-samples-get-collection",
                "responses": {
                    "200": {
                        "description": "Array of SoilSample (serializer group soilsamples)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/SoilSample"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/soilsample",
                        "title": "Soil samples",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/soilsample/",
                            "en": "https://help.terake.com/en/fieldbook/soilsample/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "SoilSamples"
                ],
                "summary": "Create SoilSample",
                "description": "Creates a SoilSample, or modifies the one the body names by \"id\" or \"uuid\", then relates it with the fields that contain it. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Soil samples (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/soilsample/"
                },
                "operationId": "post_api-soil-samples-post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "sample_number": {
                                        "type": "string"
                                    },
                                    "massive_number": {
                                        "description": "Field massive (PRIA block) number",
                                        "type": "string"
                                    },
                                    "soil_type": {
                                        "description": "At most 99 characters",
                                        "type": "string"
                                    },
                                    "sample_date": {
                                        "description": "Today when empty",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "agrifield": {
                                        "description": "{id}; replaced by the field the sample lies in",
                                        "type": "object"
                                    },
                                    "lat": {
                                        "type": "number"
                                    },
                                    "lng": {
                                        "type": "number"
                                    },
                                    "ph": {
                                        "type": "number"
                                    },
                                    "n": {
                                        "type": "number"
                                    },
                                    "p": {
                                        "type": "number"
                                    },
                                    "k": {
                                        "type": "number"
                                    },
                                    "org_c": {
                                        "type": "number"
                                    },
                                    "mg": {
                                        "type": "number"
                                    },
                                    "humus": {
                                        "type": "number"
                                    },
                                    "cu": {
                                        "type": "number"
                                    },
                                    "mn": {
                                        "type": "number"
                                    },
                                    "b": {
                                        "type": "number"
                                    },
                                    "ca": {
                                        "type": "number"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The SoilSample (serializer group soilsamples)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SoilSample"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/soilsample",
                        "title": "Soil samples",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/soilsample/",
                            "en": "https://help.terake.com/en/fieldbook/soilsample/"
                        }
                    }
                ]
            }
        },
        "/api/soilsamples/byagrifield/{agrifield_id}": {
            "get": {
                "tags": [
                    "SoilSamples"
                ],
                "summary": "SoilSamples of one Agrifield",
                "description": "The soil samples related with any crop year of the field (at most 100); [] when the field is not one of the company's undeleted fields.",
                "externalDocs": {
                    "description": "Help: Fieldbook (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldbook/"
                },
                "operationId": "get_api-soil-samples-byagrifield-get-collection",
                "parameters": [
                    {
                        "name": "agrifield_id",
                        "in": "path",
                        "description": "Agrifield id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of SoilSample (serializer group soilsamples)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/SoilSample"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    }
                ]
            }
        },
        "/api/soilsamples/{id}": {
            "get": {
                "tags": [
                    "SoilSamples"
                ],
                "summary": "Get SoilSample",
                "description": "Returns SoilSample by ID or UUID, with the crop year rows it is related with.",
                "externalDocs": {
                    "description": "Help: Soil samples (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/soilsample/"
                },
                "operationId": "get_api-soil-samples-get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "SoilSample id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The SoilSample (serializer groups soilsamples, soilsamples_single)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SoilSample2"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/soilsample",
                        "title": "Soil samples",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/soilsample/",
                            "en": "https://help.terake.com/en/fieldbook/soilsample/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "SoilSamples"
                ],
                "summary": "Modify SoilSample",
                "description": "Modifies a SoilSample, then relates it with the fields that contain it. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Soil samples (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/soilsample/"
                },
                "operationId": "put_api-soil-samples-put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "SoilSample id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "sample_number": {
                                        "type": "string"
                                    },
                                    "massive_number": {
                                        "description": "Field massive (PRIA block) number",
                                        "type": "string"
                                    },
                                    "soil_type": {
                                        "description": "At most 99 characters",
                                        "type": "string"
                                    },
                                    "sample_date": {
                                        "description": "Today when empty",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "agrifield": {
                                        "description": "{id}; replaced by the field the sample lies in",
                                        "type": "object"
                                    },
                                    "lat": {
                                        "type": "number"
                                    },
                                    "lng": {
                                        "type": "number"
                                    },
                                    "ph": {
                                        "type": "number"
                                    },
                                    "n": {
                                        "type": "number"
                                    },
                                    "p": {
                                        "type": "number"
                                    },
                                    "k": {
                                        "type": "number"
                                    },
                                    "org_c": {
                                        "type": "number"
                                    },
                                    "mg": {
                                        "type": "number"
                                    },
                                    "humus": {
                                        "type": "number"
                                    },
                                    "cu": {
                                        "type": "number"
                                    },
                                    "mn": {
                                        "type": "number"
                                    },
                                    "b": {
                                        "type": "number"
                                    },
                                    "ca": {
                                        "type": "number"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The SoilSample (serializer group soilsamples)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SoilSample"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this SoilSample"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/soilsample",
                        "title": "Soil samples",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/soilsample/",
                            "en": "https://help.terake.com/en/fieldbook/soilsample/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "SoilSamples"
                ],
                "summary": "Delete SoilSample",
                "description": "Marks the SoilSample deleted and archived and removes its relations with crop year rows. Returns the deleted SoilSample.",
                "externalDocs": {
                    "description": "Help: Soil samples (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/soilsample/"
                },
                "operationId": "delete_api-soil-samples-delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "SoilSample id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted SoilSample (serializer group soilsamples)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SoilSample"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this SoilSample"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/soilsample",
                        "title": "Soil samples",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/soilsample/",
                            "en": "https://help.terake.com/en/fieldbook/soilsample/"
                        }
                    }
                ]
            }
        },
        "/api/soilsamples/upload/xls/{year}": {
            "post": {
                "tags": [
                    "SoilSamples"
                ],
                "summary": "Imports SoilSamples from an uploaded spreadsheet",
                "description": "A sheet whose A1 reads \"Proovi nr\": per row A sample number, B massive number, C year, D date, F lat, G lng, H pH, I N, J P, K K, L organic C, M Ca, N Mg, O Cu, P Mn, Q B. Samples are matched by number. The year in the path is not used (column C decides).",
                "externalDocs": {
                    "description": "Help: Soil samples (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/soilsample/"
                },
                "operationId": "post_api-soilsamples-upload-xls-post-year",
                "parameters": [
                    {
                        "name": "year",
                        "in": "path",
                        "description": "Year (not used)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "file": {
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ filecount: N }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/soilsample",
                        "title": "Soil samples",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/soilsample/",
                            "en": "https://help.terake.com/en/fieldbook/soilsample/"
                        }
                    }
                ]
            }
        },
        "/api/soilsamples/upload/shp/{year}": {
            "post": {
                "tags": [
                    "SoilSamples"
                ],
                "summary": "Imports SoilSamples from an uploaded shapefile",
                "description": "A ZIP holding point shapefiles; samples are matched by number and year. The year in the path is used for records without their own year or date.",
                "externalDocs": {
                    "description": "Help: Soil samples (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/soilsample/"
                },
                "operationId": "post_api-soilsamples-upload-shp-post-year",
                "parameters": [
                    {
                        "name": "year",
                        "in": "path",
                        "description": "Year the samples are recorded under when a record carries none",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "file": {
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ filecount: N }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/soilsample",
                        "title": "Soil samples",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/soilsample/",
                            "en": "https://help.terake.com/en/fieldbook/soilsample/"
                        }
                    }
                ]
            }
        },
        "/api/summarised_worktime/{worker_id}": {
            "get": {
                "tags": [
                    "Workers"
                ],
                "summary": "Summarised worktime list by worker.",
                "description": "The worker's summarised worktime periods that are neither archived nor deleted, by start time.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "get_api_summarised_worktime_get",
                "parameters": [
                    {
                        "name": "worker_id",
                        "in": "path",
                        "description": "Worker id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of WorkerSummarisedWorktime (serializer group summarised_worktime)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/WorkerSummarisedWorktime"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No such worker in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/summarised_worktime": {
            "post": {
                "tags": [
                    "Workers"
                ],
                "summary": "Creates WorkerSummarisedWorktime",
                "description": "Creates a new WorkerSummarisedWorktime for body \"worker_id\", or modifies the one named by body \"id\". Same action as the PUT route.\n\nThe stop time is start_time plus summarised_months; the norm hours and days are counted for that span. Answers 200 with {\"error\": \"message.invalid_input_error\"} without start_time or with months outside 1..12, and with {\"error\": \"message.period_overlap_error\", \"period\": {...}} when another period of the worker overlaps.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "post_api_summarised_worktime_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "The period to modify; leave it out to create one",
                                        "type": "integer"
                                    },
                                    "worker_id": {
                                        "description": "The worker of a new period",
                                        "type": "integer"
                                    },
                                    "start_time": {
                                        "description": "Start time. Date and time as Y-m-d H:i:s, for example 2026-08-28 14:30:00.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "summarised_months": {
                                        "description": "Summarised months, 1 to 12",
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The WorkerSummarisedWorktime (serializer group summarised_worktime), or {\"error\": ...}",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/WorkerSummarisedWorktime"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the worker"
                    },
                    "404": {
                        "description": "No such period or worker in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/summarised_worktime/{id}": {
            "put": {
                "tags": [
                    "Workers"
                ],
                "summary": "Creates a new WorkerSummarisedWorktime, or modifies the one named in the URL",
                "description": "An id that is not a positive number (the web client sends \"undefined\") creates a new period for body \"worker_id\". Same action as the POST route.\n\nAnswers 200 with {\"error\": \"message.invalid_input_error\"} without start_time or with months outside 1..12, and with {\"error\": \"message.period_overlap_error\", \"period\": {...}} when another period of the worker overlaps.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "put_api_summarised_worktime_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "WorkerSummarisedWorktime id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "worker_id": {
                                        "description": "The worker of a new period",
                                        "type": "integer"
                                    },
                                    "start_time": {
                                        "description": "Start time. Date and time as Y-m-d H:i:s, for example 2026-08-28 14:30:00.",
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "summarised_months": {
                                        "description": "Summarised months, 1 to 12",
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The WorkerSummarisedWorktime (serializer group summarised_worktime), or {\"error\": ...}",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/WorkerSummarisedWorktime"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the worker"
                    },
                    "404": {
                        "description": "No such period or worker in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/summarised_worktime/{worker_id}/{id}": {
            "delete": {
                "tags": [
                    "Workers"
                ],
                "summary": "Delete WorkerSummarisedWorktime",
                "description": "Marks the period deleted. Returns { id, is_deleted: true }.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "delete_api_summarised_worktime_delete",
                "parameters": [
                    {
                        "name": "worker_id",
                        "in": "path",
                        "description": "Worker id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "WorkerSummarisedWorktime id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ id, is_deleted: true }"
                    },
                    "403": {
                        "description": "The caller may not modify the worker"
                    },
                    "404": {
                        "description": "No such period of that worker in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/terakereports": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "TerakeReport collection",
                "description": "The company's report definitions, by name. from_updated_at (Unix timestamp): every definition changed since,\ndeleted and archived ones included; is_archived: the archived ones.",
                "externalDocs": {
                    "description": "Help: Production (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/production/"
                },
                "operationId": "get_api_terakereports_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of TerakeReport (serializer groups default, terakereports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/TerakeReport"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/reports/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/reports/production/",
                            "en": "https://help.terake.com/en/reports/production/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/storage/production/",
                            "en": "https://help.terake.com/en/storage/production/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Reports"
                ],
                "summary": "Creates or modifies a TerakeReport",
                "description": "Without an id a new definition of the company; with one (the path's, else the body's) the company's\ndefinition loses its data items and takes the body's, in order.",
                "externalDocs": {
                    "description": "Help: Material usage (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/materialusage/"
                },
                "operationId": "post_api_terakereports_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "report_clock_intervals": {
                                        "description": "Clock intervals the hours are split over, e.g. \"22-6, 7-21\".",
                                        "type": "string"
                                    },
                                    "dataitems": {
                                        "description": "Data items of the report, in display order. Objects with an id field.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "required": {
                                        "description": "Data items that are mandatory. Objects with an id field.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "summables": {
                                        "description": "Data items that get aggregated. Objects with an id field.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "subtotals": {
                                        "description": "Subtotal grouping: each entry has an id and a children array of data items.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The TerakeReport (serializer groups default, terakereports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TerakeReport"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/reports/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/reports/production/",
                            "en": "https://help.terake.com/en/reports/production/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/storage/production/",
                            "en": "https://help.terake.com/en/storage/production/"
                        }
                    }
                ]
            }
        },
        "/api/terakereports-dataitems": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "TerakeReport data items",
                "description": "The data items a report can be built from, grouped by their group translation key.",
                "operationId": "get_api_terakereports_dataitems_get_collection",
                "responses": {
                    "200": {
                        "description": "{ group_trans_key: [TerakeDataItem] } (serializer groups default, terakereports)"
                    }
                }
            }
        },
        "/api/terakereports/{id}": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "TerakeReport by ID",
                "description": "The company's report definition or a generic one, with its data items; an empty body when there is none.",
                "externalDocs": {
                    "description": "Help: Material usage (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/materialusage/"
                },
                "operationId": "get_api_terakereports_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "TerakeReport id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "TerakeReport (serializer groups default, terakereports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TerakeReport"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/reports/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/reports/production/",
                            "en": "https://help.terake.com/en/reports/production/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/storage/production/",
                            "en": "https://help.terake.com/en/storage/production/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Reports"
                ],
                "summary": "Creates or modifies a TerakeReport",
                "externalDocs": {
                    "description": "Help: Material usage (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/materialusage/"
                },
                "operationId": "put_api_terakereports_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/reports/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/reports/production/",
                            "en": "https://help.terake.com/en/reports/production/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/storage/production/",
                            "en": "https://help.terake.com/en/storage/production/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Reports"
                ],
                "summary": "Delete TerakeReport by ID or UUID",
                "description": "Marks the company's report definition deleted (rights as for any company entity).",
                "externalDocs": {
                    "description": "Help: Material usage (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/materialusage/"
                },
                "operationId": "delete_api_terakereports_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "TerakeReport id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted TerakeReport (serializer groups default, terakereports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TerakeReport"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Access denied"
                    },
                    "404": {
                        "description": "Not found in the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/reports/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/reports/production/",
                            "en": "https://help.terake.com/en/reports/production/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/storage/production/",
                            "en": "https://help.terake.com/en/storage/production/"
                        }
                    }
                ]
            }
        },
        "/api/terakereports-data/{report_id}": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "TerakeReport data",
                "description": "The report's rows for the period (at most 366 days) and its columns (the data items).\nApproval: only approved work by default. Add notapproved to the dimension array to include unapproved work as well.\nWork whose start and stop time are equal is left out unless incl_zero_works is in the dimension array; reports 43,\n116 and 535 never leave it out. A missing or invalid period, or a longer one, answers\n{ error, error_slug } with HTTP 200 (message.report_dates_missing, message.report_dates_not_date_format,\nmessage.report_dates_too_long_period).",
                "externalDocs": {
                    "description": "Help: Material usage (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/materialusage/"
                },
                "operationId": "get_api_terakereports_data_get_collection",
                "parameters": [
                    {
                        "name": "report_id",
                        "in": "path",
                        "description": "TerakeReport id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Start of the period, Y-m-d.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "End of the period, Y-m-d.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "dimension",
                        "in": "query",
                        "description": "Sent either as dimension[]=record&dimension[]=worker or as a comma separated list. Aggregation base, one or many of:\nrecord, validate_date, worker, department, approver, worktype, material_consumption, workunit, material_production,\nmain_facility, secondary_facility, agrifield, crop_name, crop_period_name, pria_payee_name, workobject,\nworkobject_location_area, customer, cost_account, project, maintenance_unit, waybill_number, from_point_name,\nto_point_name, t_material_name, from_silage_name, to_silage_name, harvest_material_name; and the flags notapproved\nand incl_zero_works.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by worker id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by worktype id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by main facility id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by cost account id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "crop_id",
                        "in": "query",
                        "description": "Filter by crop id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "agrifield_id",
                        "in": "query",
                        "description": "Filter by workobject id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "silage_transport_id",
                        "in": "query",
                        "description": "Filter by silage transport id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "transport_id",
                        "in": "query",
                        "description": "Filter by transport id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "record_workdone_id",
                        "in": "query",
                        "description": "Filter by the workdone the record belongs to.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ collection: [rows], columns: [data items] }, or { error, error_slug }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/reports/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/reports/production/",
                            "en": "https://help.terake.com/en/reports/production/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/storage/production/",
                            "en": "https://help.terake.com/en/storage/production/"
                        }
                    }
                ]
            }
        },
        "/api/translations-public": {
            "get": {
                "tags": [
                    "TranslationPhrases"
                ],
                "summary": "TranslationPhrase dictionary",
                "description": "Every phrase of the requested locales as { locale: { category_key: { phrase_key: text } } }; a JSON phrase is its decoded value. Public: no credential needed.",
                "externalDocs": {
                    "description": "Help: Transport module (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/"
                },
                "operationId": "get_api_translations_get_public_collection",
                "parameters": [
                    {
                        "name": "locales",
                        "in": "query",
                        "description": "Comma-separated locales, default \"et,en\"",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The dictionary"
                    },
                    "304": {
                        "description": "Not modified since the ETag the client sent"
                    }
                },
                "security": [],
                "x-help-pages": [
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/charter_jobs": {
            "get": {
                "tags": [
                    "Transport"
                ],
                "summary": "CharterJob collection",
                "description": "The caller's company's undeleted charter jobs that start on or after the first day of the period and stop on or before the end of its last day, by start time, at most 1000.",
                "externalDocs": {
                    "description": "Help: Charter jobs (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/charter_jobs/"
                },
                "operationId": "get_api_charter_jobs_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "First day of the period, as Y-m-d, for example 2026-08-01 (a time part is ignored). Default: a week ago.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Last day of the period, as Y-m-d, for example 2026-08-31, included whole (a time part is ignored). Default: tomorrow.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of CharterJob (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/CharterJob"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/charter_jobs",
                        "title": "Charter jobs",
                        "help": {
                            "et": "https://help.terake.com/et/transport/charter_jobs/",
                            "en": "https://help.terake.com/en/transport/charter_jobs/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Transport"
                ],
                "summary": "Create CharterJob",
                "description": "Creates a CharterJob, or modifies the one the body names by \"id\" or \"uuid\". A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Charter jobs (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/charter_jobs/"
                },
                "operationId": "post_api_charter_jobs_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "start_time": {
                                        "description": "Start, as Y-m-d H:i:s, for example 2026-08-27 08:00:00 (Europe/Helsinki); null sets the current time",
                                        "type": "string"
                                    },
                                    "stop_time": {
                                        "description": "End, as Y-m-d H:i:s, for example 2026-08-27 16:00:00 (Europe/Helsinki); null sets the current time",
                                        "type": "string"
                                    },
                                    "from_place_info": {
                                        "type": "string"
                                    },
                                    "to_place_info": {
                                        "type": "string"
                                    },
                                    "route_description": {
                                        "type": "string"
                                    },
                                    "additional": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The CharterJob (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CharterJob"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/charter_jobs",
                        "title": "Charter jobs",
                        "help": {
                            "et": "https://help.terake.com/et/transport/charter_jobs/",
                            "en": "https://help.terake.com/en/transport/charter_jobs/"
                        }
                    }
                ]
            }
        },
        "/api/charter_jobs/{id}": {
            "get": {
                "tags": [
                    "Transport"
                ],
                "summary": "Get CharterJob",
                "description": "Returns one CharterJob by id or uuid.",
                "externalDocs": {
                    "description": "Help: Charter jobs (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/charter_jobs/"
                },
                "operationId": "get_api_charter_jobs_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "CharterJob id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The CharterJob (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CharterJob"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/charter_jobs",
                        "title": "Charter jobs",
                        "help": {
                            "et": "https://help.terake.com/et/transport/charter_jobs/",
                            "en": "https://help.terake.com/en/transport/charter_jobs/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Transport"
                ],
                "summary": "Modify CharterJob",
                "description": "Modifies a CharterJob. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Charter jobs (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/charter_jobs/"
                },
                "operationId": "put_api_charter_jobs_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "CharterJob id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "start_time": {
                                        "description": "Start, as Y-m-d H:i:s, for example 2026-08-27 08:00:00 (Europe/Helsinki); null sets the current time",
                                        "type": "string"
                                    },
                                    "stop_time": {
                                        "description": "End, as Y-m-d H:i:s, for example 2026-08-27 16:00:00 (Europe/Helsinki); null sets the current time",
                                        "type": "string"
                                    },
                                    "from_place_info": {
                                        "type": "string"
                                    },
                                    "to_place_info": {
                                        "type": "string"
                                    },
                                    "route_description": {
                                        "type": "string"
                                    },
                                    "additional": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The CharterJob (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CharterJob"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this CharterJob"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/charter_jobs",
                        "title": "Charter jobs",
                        "help": {
                            "et": "https://help.terake.com/et/transport/charter_jobs/",
                            "en": "https://help.terake.com/en/transport/charter_jobs/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Transport"
                ],
                "summary": "Delete CharterJob",
                "description": "Deletes CharterJob by ID or UUID (marks it deleted and archived). Returns the deleted CharterJob.",
                "externalDocs": {
                    "description": "Help: Charter jobs (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/charter_jobs/"
                },
                "operationId": "delete_api_charter_jobs_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "CharterJob id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted CharterJob (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CharterJob"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this CharterJob"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/charter_jobs",
                        "title": "Charter jobs",
                        "help": {
                            "et": "https://help.terake.com/et/transport/charter_jobs/",
                            "en": "https://help.terake.com/en/transport/charter_jobs/"
                        }
                    }
                ]
            }
        },
        "/api/transport/trip_routes": {
            "get": {
                "tags": [
                    "Transport"
                ],
                "summary": "TripRoute collection",
                "description": "The caller's company's trip routes that are neither deleted nor archived, by name, at most 10000.",
                "operationId": "get_api_transport_trip_routes_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived routes and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of TripRoute (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/TripRoute"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "Transport"
                ],
                "summary": "Create TripRoute",
                "description": "Creates a TripRoute, or modifies the one the body names by \"id\" or \"uuid\". A key the body leaves out leaves that field alone.",
                "operationId": "post_api_transport_trip_routes_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "description": "Route name; required by the table",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The TripRoute (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TripRoute"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/transport/trip_routes/{id}": {
            "get": {
                "tags": [
                    "Transport"
                ],
                "summary": "Get TripRoute",
                "description": "Returns one TripRoute by id or uuid.",
                "operationId": "get_api_transport_trip_routes_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "TripRoute id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The TripRoute (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TripRoute"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                }
            },
            "put": {
                "tags": [
                    "Transport"
                ],
                "summary": "Modify TripRoute",
                "description": "Modifies a TripRoute. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "operationId": "put_api_transport_trip_routes_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "TripRoute id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The TripRoute (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TripRoute"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this TripRoute"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Transport"
                ],
                "summary": "Delete TripRoute",
                "description": "Deletes TripRoute by ID or UUID (marks it deleted and archived). Returns the deleted TripRoute.",
                "operationId": "delete_api_transport_trip_routes_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "TripRoute id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted TripRoute (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TripRoute"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this TripRoute"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                }
            }
        },
        "/api/trip_routes": {
            "get": {
                "tags": [
                    "Transport"
                ],
                "summary": "TripRoute collection",
                "description": "The caller's company's trip routes that are neither deleted nor archived, by name, at most 10000.",
                "externalDocs": {
                    "description": "Help: Routes (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/routes/"
                },
                "operationId": "get_api_trip_routes_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived routes and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of TripRoute (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/TripRoute"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/routes",
                        "title": "Routes",
                        "help": {
                            "et": "https://help.terake.com/et/transport/routes/",
                            "en": "https://help.terake.com/en/transport/routes/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Transport"
                ],
                "summary": "Create TripRoute",
                "description": "Creates a TripRoute, or modifies the one the body names by \"id\" or \"uuid\". A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Routes (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/routes/"
                },
                "operationId": "post_api_trip_routes_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "description": "Route name; required by the table",
                                        "type": "string"
                                    },
                                    "route_number": {
                                        "type": "string"
                                    },
                                    "route_mileage": {
                                        "description": "Length in kilometres, for example 12.5 (a number is taken as well)",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The TripRoute (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TripRoute"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/routes",
                        "title": "Routes",
                        "help": {
                            "et": "https://help.terake.com/et/transport/routes/",
                            "en": "https://help.terake.com/en/transport/routes/"
                        }
                    }
                ]
            }
        },
        "/api/trip_routes/{id}": {
            "get": {
                "tags": [
                    "Transport"
                ],
                "summary": "Get TripRoute",
                "description": "Returns one TripRoute by id or uuid.",
                "externalDocs": {
                    "description": "Help: Routes (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/routes/"
                },
                "operationId": "get_api_trip_routes_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "TripRoute id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The TripRoute (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TripRoute"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/routes",
                        "title": "Routes",
                        "help": {
                            "et": "https://help.terake.com/et/transport/routes/",
                            "en": "https://help.terake.com/en/transport/routes/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Transport"
                ],
                "summary": "Modify TripRoute",
                "description": "Modifies a TripRoute. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Routes (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/routes/"
                },
                "operationId": "put_api_trip_routes_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "TripRoute id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "route_number": {
                                        "type": "string"
                                    },
                                    "route_mileage": {
                                        "description": "Length in kilometres, for example 12.5 (a number is taken as well)",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The TripRoute (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TripRoute"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this TripRoute"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/routes",
                        "title": "Routes",
                        "help": {
                            "et": "https://help.terake.com/et/transport/routes/",
                            "en": "https://help.terake.com/en/transport/routes/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Transport"
                ],
                "summary": "Delete TripRoute",
                "description": "Deletes TripRoute by ID or UUID (marks it deleted and archived). Returns the deleted TripRoute.",
                "externalDocs": {
                    "description": "Help: Routes (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/transport/routes/"
                },
                "operationId": "delete_api_trip_routes_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "TripRoute id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted TripRoute (serializer groups default, transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TripRoute"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this TripRoute"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/transport/routes",
                        "title": "Routes",
                        "help": {
                            "et": "https://help.terake.com/et/transport/routes/",
                            "en": "https://help.terake.com/en/transport/routes/"
                        }
                    }
                ]
            }
        },
        "/api/transports": {
            "get": {
                "tags": [
                    "Transports"
                ],
                "summary": "TransportCase collection",
                "description": "The company's transports (by the transport's worker) of the period, neither deleted nor archived, by time, at most 1000: /api/silagetransports the silage transports (type 3), /api/transports all others.",
                "externalDocs": {
                    "description": "Help: Transport (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/transports/"
                },
                "operationId": "get_api_transports_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d; the whole of that day is included. Defaults to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of TransportCase (serializer group transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/TransportCase"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/transports",
                        "title": "Transport",
                        "help": {
                            "et": "https://help.terake.com/et/admin/transports/",
                            "en": "https://help.terake.com/en/admin/transports/"
                        }
                    },
                    {
                        "route": "/storage/transport",
                        "title": "Transport",
                        "help": {
                            "et": "https://help.terake.com/et/storage/transport/",
                            "en": "https://help.terake.com/en/storage/transport/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Transports"
                ],
                "summary": "Create TransportCase",
                "description": "Creates a transport of the company with an approved, zero-length workdone. A body with an \"id\" answers 404.",
                "externalDocs": {
                    "description": "Help: Transport (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/transports/"
                },
                "operationId": "post_api_transports_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "transport_time": {
                                        "description": "Time of the transport, for example 2026-08-28 14:30:00",
                                        "type": "string"
                                    },
                                    "cargo_count": {
                                        "description": "Loads; 1 when missing or zero",
                                        "type": "integer"
                                    },
                                    "weight_amount": {
                                        "type": "number"
                                    },
                                    "weight_amount_empty": {
                                        "type": "number"
                                    },
                                    "weight_amount_full": {
                                        "type": "number"
                                    },
                                    "waybill_number": {
                                        "type": "string"
                                    },
                                    "odometer_start": {
                                        "type": "integer"
                                    },
                                    "odometer_stop": {
                                        "type": "integer"
                                    },
                                    "worker": {
                                        "description": "{\"id\": ...}, a worker of the company; the caller when missing",
                                        "type": "object"
                                    },
                                    "material": {
                                        "description": "{\"id\": ...}",
                                        "type": "object"
                                    },
                                    "from_point": {
                                        "description": "{\"id\": ...}, a field or storage",
                                        "type": "object"
                                    },
                                    "to_point": {
                                        "description": "{\"id\": ...}, a field or storage",
                                        "type": "object"
                                    },
                                    "transport_type": {
                                        "description": "{\"id\": ...}; 1 when missing",
                                        "type": "object"
                                    },
                                    "worktype": {
                                        "description": "{\"id\": ...} of the workdone; the generic work type when missing",
                                        "type": "object"
                                    },
                                    "main_facility": {
                                        "description": "{\"id\": ...} of the workdone",
                                        "type": "object"
                                    },
                                    "secondary_facility": {
                                        "description": "{\"id\": ...} of the workdone",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The TransportCase (serializer groups transports, fuels)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TransportCase"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "The body has an id, or names an unknown worker, work type or facility"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/transports",
                        "title": "Transport",
                        "help": {
                            "et": "https://help.terake.com/et/admin/transports/",
                            "en": "https://help.terake.com/en/admin/transports/"
                        }
                    },
                    {
                        "route": "/storage/transport",
                        "title": "Transport",
                        "help": {
                            "et": "https://help.terake.com/et/storage/transport/",
                            "en": "https://help.terake.com/en/storage/transport/"
                        }
                    }
                ]
            }
        },
        "/api/silagetransports": {
            "get": {
                "tags": [
                    "Transports"
                ],
                "summary": "TransportCase collection",
                "description": "The company's transports (by the transport's worker) of the period, neither deleted nor archived, by time, at most 1000: /api/silagetransports the silage transports (type 3), /api/transports all others.",
                "externalDocs": {
                    "description": "Help: Transport of harvest (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/silagetransports/"
                },
                "operationId": "get_api_silagetransports_get_collection",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d; the whole of that day is included. Defaults to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of TransportCase (serializer group transports)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/TransportCase"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/silagetransports",
                        "title": "Transport of harvest",
                        "help": {
                            "et": "https://help.terake.com/et/admin/silagetransports/",
                            "en": "https://help.terake.com/en/admin/silagetransports/"
                        }
                    }
                ]
            }
        },
        "/api/transports/{id}": {
            "get": {
                "tags": [
                    "Transports"
                ],
                "summary": "Get TransportCase",
                "description": "One transport of the company (by its worker), by id or uuid.",
                "externalDocs": {
                    "description": "Help: Transport (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/transport/"
                },
                "operationId": "get_api_transports_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "TransportCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The TransportCase (serializer groups transports, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TransportCase2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Another company's transport"
                    },
                    "404": {
                        "description": "No such transport"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/transports",
                        "title": "Transport",
                        "help": {
                            "et": "https://help.terake.com/et/admin/transports/",
                            "en": "https://help.terake.com/en/admin/transports/"
                        }
                    },
                    {
                        "route": "/reports/transport",
                        "title": "Transport",
                        "help": {
                            "et": "https://help.terake.com/et/reports/transport/",
                            "en": "https://help.terake.com/en/reports/transport/"
                        }
                    },
                    {
                        "route": "/storage/transport",
                        "title": "Transport",
                        "help": {
                            "et": "https://help.terake.com/et/storage/transport/",
                            "en": "https://help.terake.com/en/storage/transport/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Transports"
                ],
                "summary": "Modify TransportCase",
                "description": "Changes a transport of the company; the body \"id\" must equal the path id (404 otherwise). A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Transport (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/transports/"
                },
                "operationId": "put_api_transports_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "TransportCase id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The TransportCase (serializer groups transports, fuels)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TransportCase"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Another company's transport"
                    },
                    "404": {
                        "description": "No such transport, or the body id differs"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/transports",
                        "title": "Transport",
                        "help": {
                            "et": "https://help.terake.com/et/admin/transports/",
                            "en": "https://help.terake.com/en/admin/transports/"
                        }
                    },
                    {
                        "route": "/storage/transport",
                        "title": "Transport",
                        "help": {
                            "et": "https://help.terake.com/et/storage/transport/",
                            "en": "https://help.terake.com/en/storage/transport/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Transports"
                ],
                "summary": "Delete TransportCase",
                "description": "Marks the transport deleted, clears its workdone link (the workdone stays) and takes its load out of the stock caches. Returns the deleted TransportCase.",
                "externalDocs": {
                    "description": "Help: Transport (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/transports/"
                },
                "operationId": "delete_api_transports_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "TransportCase id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The TransportCase (serializer groups transports, fuels, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TransportCase3"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Another company's transport"
                    },
                    "404": {
                        "description": "No such transport"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/transports",
                        "title": "Transport",
                        "help": {
                            "et": "https://help.terake.com/et/admin/transports/",
                            "en": "https://help.terake.com/en/admin/transports/"
                        }
                    },
                    {
                        "route": "/storage/transport",
                        "title": "Transport",
                        "help": {
                            "et": "https://help.terake.com/et/storage/transport/",
                            "en": "https://help.terake.com/en/storage/transport/"
                        }
                    }
                ]
            }
        },
        "/api/transport-cases-list/{ids}": {
            "get": {
                "tags": [
                    "Transports"
                ],
                "summary": "TransportCase simplified list",
                "description": "At most 100 of the company's transports, neither deleted nor archived, by time: [{id, transport_time, weight_amount, cargo_count, material {name}, worker {fullname}, from_point {name}, to_point {name}}].",
                "externalDocs": {
                    "description": "Help: Transport (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/reports/transport/"
                },
                "operationId": "get_api_transport_cases_simplified_list_collection",
                "parameters": [
                    {
                        "name": "ids",
                        "in": "path",
                        "description": "Comma-separated TransportCase ids",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of simplified transports"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/reports/transport",
                        "title": "Transport",
                        "help": {
                            "et": "https://help.terake.com/et/reports/transport/",
                            "en": "https://help.terake.com/en/reports/transport/"
                        }
                    }
                ]
            }
        },
        "/api/ttki-status": {
            "get": {
                "tags": [
                    "Ttki"
                ],
                "summary": "TTKI access log status per day",
                "description": "Per day and TTKI work area of the company, its workdones and the access log files sent for them.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "get_ttki-status-get",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d; the first day of this month by default",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, inclusive; the last day of this month by default",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of {id, wd_accounting_date, workdone_ids, accounting_date, file_name, wd_count, reported_count, send_time, file_response_code, file_response, workobject: {id, name, fullname}, workarea: {id, name}}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/get-ttki-workareas-list": {
            "get": {
                "tags": [
                    "Ttki"
                ],
                "summary": "TTKI work areas of the company",
                "description": "Asks X-Road for the company's work areas and returns them as partner work objects, matched to the company's work objects where possible.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "get_get-ttki-workareas-list",
                "responses": {
                    "200": {
                        "description": "List of partner work objects {id, outer_id, name, partner_timestamp, terake_object}, or {error, response_code, error_description}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/relate-partner-object/workobject": {
            "post": {
                "tags": [
                    "Ttki"
                ],
                "summary": "Maps a TTKI work area to a work object",
                "description": "The company's partner work object of the work area (created when missing) is mapped to the work object, or to none.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "post_relate-partner-object-workobject-post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "outer_id": {
                                        "description": "TTKI work area id",
                                        "type": "string"
                                    },
                                    "workobject": {
                                        "description": "Work object {id}",
                                        "type": [
                                            "object",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The partner work object {id, outer_id, name, partner_timestamp, terake_object}"
                    },
                    "404": {
                        "description": "Work object not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/get-ttki-employees-list": {
            "get": {
                "tags": [
                    "Ttki"
                ],
                "summary": "TTKI employees of the company",
                "description": "Imports the company's employees over X-Road (matching or creating workers), then lists the TTKI employees of the company and of its subcontractors. When there are none, the import's error.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "get_get-ttki-employees-list",
                "responses": {
                    "200": {
                        "description": "List of {id, name, outer_id, terake_object: {id, fullname}, company: {id, uuid, name}, integration_owner: {uuid, name}}, or {error, response_code, error_description}"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/get-ttki-file-content/{file_id}": {
            "get": {
                "tags": [
                    "Ttki"
                ],
                "summary": "Content of a sent X-Road file",
                "description": "The request part of a file of the company's TTKI integration, as an object.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "get_get-ttki-file",
                "parameters": [
                    {
                        "name": "file_id",
                        "in": "path",
                        "description": "IntegrationPartnerFile id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The request, e.g. {WorkAreaId, PeriodStart, PeriodEnd, AccessLogs: [...]}"
                    },
                    "404": {
                        "description": "No such file of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/relate-partner-object/worker": {
            "post": {
                "tags": [
                    "Ttki"
                ],
                "summary": "Maps a TTKI employee to a worker",
                "description": "Maps an employee of the list (the company's own, or the company's employee at another owner's construction) to a worker of the company, or removes the mapping.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "post_relate-partner-object-worker-post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "outer_id": {
                                        "description": "TTKI employee id",
                                        "type": "string"
                                    },
                                    "integration_owner": {
                                        "description": "{uuid, name} of the owner company",
                                        "type": "object"
                                    },
                                    "worker": {
                                        "description": "Worker {id}",
                                        "type": [
                                            "object",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{id, name, outer_id, terake_object: {id, fullname}, company: {id, name}, integration_owner: {uuid, name}}"
                    },
                    "404": {
                        "description": "Unknown owner, employee or worker"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/get-constructions-list": {
            "get": {
                "tags": [
                    "Ttki"
                ],
                "summary": "Imports the TTKI constructions of the company",
                "description": "Asks X-Road for the company's constructions (once a day) and their employment chains, mapping work areas, projects, companies and employees. Answers with an empty body.",
                "operationId": "get_get-constructions-list",
                "responses": {
                    "200": {
                        "description": "Empty body"
                    }
                }
            }
        },
        "/api/send-ttki-person-log-file/{accounting_date}/{agrifield_id}": {
            "post": {
                "tags": [
                    "Ttki"
                ],
                "summary": "Sends a day's TTKI access logs",
                "description": "The day's entries and exits on the work object's TTKI work area, sent to TTKI over X-Road as SendAnonymousAccessLog and SendPersonAccessLog. Administrators only.",
                "externalDocs": {
                    "description": "Help: Integrations (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/integrations/"
                },
                "operationId": "post_send-ttki-person-log-agrifield-file",
                "parameters": [
                    {
                        "name": "accounting_date",
                        "in": "path",
                        "description": "Date as Y-m-d",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "agrifield_id",
                        "in": "path",
                        "description": "Work object id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{file_response_code}: 200 when TTKI accepted every file, else 0"
                    },
                    "403": {
                        "description": "Not an administrator"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/integrations",
                        "title": "Integrations",
                        "help": {
                            "et": "https://help.terake.com/et/admin/integrations/",
                            "en": "https://help.terake.com/en/admin/integrations/"
                        }
                    }
                ]
            }
        },
        "/api/upsync-requests/set-handled/{id}": {
            "get": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Marks an upsync request handled",
                "description": "An upsync request of the caller's company is marked handled; with inserted_id, the fuel filling or fault its\nmobile request created gets the integration reference BV:<inserted_id>.",
                "operationId": "get_upsync_requests_set_handled",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "UpsyncRequest id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "inserted_id",
                        "in": "query",
                        "description": "The id the company's own system gave the record",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "UpsyncRequest (every exposed property)"
                    },
                    "404": {
                        "description": "No such upsync request of the caller's company"
                    }
                }
            },
            "put": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Marks an upsync request handled.",
                "operationId": "put_upsync_requests_set_handled",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "post": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Marks an upsync request handled.",
                "operationId": "post_upsync_requests_set_handled",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "delete": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Marks an upsync request handled.",
                "operationId": "delete_upsync_requests_set_handled",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "options": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Marks an upsync request handled.",
                "operationId": "options_upsync_requests_set_handled",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "head": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Marks an upsync request handled.",
                "operationId": "head_upsync_requests_set_handled",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "patch": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Marks an upsync request handled.",
                "operationId": "patch_upsync_requests_set_handled",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            },
            "trace": {
                "tags": [
                    "Integrations"
                ],
                "summary": "Marks an upsync request handled.",
                "operationId": "trace_upsync_requests_set_handled",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/workdayrules": {
            "get": {
                "tags": [
                    "WorkdayRules"
                ],
                "summary": "WorkdayRules collection",
                "description": "The company's workday rules that are neither deleted nor archived, by id.",
                "externalDocs": {
                    "description": "Help: Company settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/companysettings/"
                },
                "operationId": "get_api_workdayrules_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived rules and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of WorkdayRule (serializer group workdayrules)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/WorkdayRule"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/companysettings",
                        "title": "Company settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/companysettings/",
                            "en": "https://help.terake.com/en/admin/companysettings/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "WorkdayRules"
                ],
                "summary": "Create new WorkdayRule",
                "description": "Creates a WorkdayRule, or modifies the one the body names by \"id\" or \"uuid\". A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Company settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/companysettings/"
                },
                "operationId": "post_api_workdayrules_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "department": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "worker_group": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "duration_minutes": {
                                        "description": "Workday length as HH:MM (or a number of seconds)",
                                        "type": "string"
                                    },
                                    "min_duration_minutes": {
                                        "description": "Minimum workday length as HH:MM (or a number of seconds)",
                                        "type": "string"
                                    },
                                    "pause_minutes": {
                                        "description": "Pause as HH:MM (or a number of seconds)",
                                        "type": "string"
                                    },
                                    "is_gaps_filled": {
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The WorkdayRule (serializer group workdayrules)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/WorkdayRule"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/companysettings",
                        "title": "Company settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/companysettings/",
                            "en": "https://help.terake.com/en/admin/companysettings/"
                        }
                    }
                ]
            }
        },
        "/api/workdayrules/{id}": {
            "get": {
                "tags": [
                    "WorkdayRules"
                ],
                "summary": "WorkdayRule by ID or UUID",
                "description": "Returns WorkdayRule by ID or UUID.",
                "externalDocs": {
                    "description": "Help: Company settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/companysettings/"
                },
                "operationId": "get_api_workdayrules_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "WorkdayRule id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The WorkdayRule (serializer group workdayrules)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/WorkdayRule"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/companysettings",
                        "title": "Company settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/companysettings/",
                            "en": "https://help.terake.com/en/admin/companysettings/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "WorkdayRules"
                ],
                "summary": "Modify WorkdayRule",
                "description": "Modifies a WorkdayRule. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Company settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/companysettings/"
                },
                "operationId": "put_api_workdayrules_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "WorkdayRule id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Must equal the path id",
                                        "type": "integer"
                                    },
                                    "department": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "worker_group": {
                                        "description": "{id}; null clears it",
                                        "type": "object"
                                    },
                                    "duration_minutes": {
                                        "description": "Workday length as HH:MM (or a number of seconds)",
                                        "type": "string"
                                    },
                                    "min_duration_minutes": {
                                        "description": "Minimum workday length as HH:MM (or a number of seconds)",
                                        "type": "string"
                                    },
                                    "pause_minutes": {
                                        "description": "Pause as HH:MM (or a number of seconds)",
                                        "type": "string"
                                    },
                                    "is_gaps_filled": {
                                        "type": "boolean"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The WorkdayRule (serializer group workdayrules)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/WorkdayRule"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this WorkdayRule"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/companysettings",
                        "title": "Company settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/companysettings/",
                            "en": "https://help.terake.com/en/admin/companysettings/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "WorkdayRules"
                ],
                "summary": "Delete WorkdayRule by ID or UUID",
                "description": "Deletes WorkdayRule by ID or UUID (marks it deleted and archived). Returns the deleted WorkdayRule.",
                "externalDocs": {
                    "description": "Help: Company settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/companysettings/"
                },
                "operationId": "delete_api_workdayrules_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "WorkdayRule id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted WorkdayRule (serializer group workdayrules)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/WorkdayRule"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this WorkdayRule"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/companysettings",
                        "title": "Company settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/companysettings/",
                            "en": "https://help.terake.com/en/admin/companysettings/"
                        }
                    }
                ]
            }
        },
        "/api/agrifieldworkandmaterialusage": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Work performed on Agrifields, with the material used on each",
                "description": "Work performed on Agrifields, with the material used on each.\n\nReturns one entry per agrifield, keyed by agrifield id, each with: agrifield,\nagrifield_data, workdones (the work done on that field in the period),\nworktypes_with_material_usage.\n\nDespite the route name, this reports work that was performed. It is unrelated to the\nAgrifieldWorks endpoints, which plan work rather than record it.",
                "externalDocs": {
                    "description": "Help: Activities (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                },
                "operationId": "get_api_agrifieldworkandmaterialusage",
                "parameters": [
                    {
                        "name": "only_notapproved",
                        "in": "query",
                        "description": "",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Worker id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Worktype id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Facility id used as the main facility",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "CostAccount id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "myworks",
                        "in": "query",
                        "description": "",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "crop_id",
                        "in": "query",
                        "description": "Filter by crop id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "output_type",
                        "in": "query",
                        "description": "Response format: 0 JSON, 1 xls, 2 pdf.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "pria_payee_id",
                        "in": "query",
                        "description": "Filter by PRIA payee id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by project id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/afworkandmaterialusage",
                        "title": "Activities",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/afworkandmaterialusage/",
                            "en": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                        }
                    }
                ]
            }
        },
        "/api/add-agrifieldworkandmaterialusage": {
            "put": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Adds material usage to a Workdone performed on an Agrifield",
                "description": "Adds material usage to a Workdone performed on an Agrifield.\n\nSaves the harvest record alongside it when the work is harvesting, and recalculates the\nper-hectare ratios when hectares_served changes.\n\nDespite the route name, it takes a workdone_id and changes work that was performed. It is\nunrelated to the AgrifieldWorks endpoints, which plan work rather than record it.",
                "externalDocs": {
                    "description": "Help: Activities (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                },
                "operationId": "put_api_add_agrifieldworkandmaterialusage",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "workdone_id": {
                                        "description": "Workdone the material usage is added to",
                                        "type": "integer"
                                    },
                                    "hectares_served": {
                                        "description": "Area served, used to recalculate the per-hectare ratios",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "harvest": {
                                        "description": "Harvest record saved alongside the material usage",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Workdone (serializer groups workdone, materialusage_all)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone13"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Workdone"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/afworkandmaterialusage",
                        "title": "Activities",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/afworkandmaterialusage/",
                            "en": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                        }
                    }
                ]
            }
        },
        "/api/workdone/approve_client": {
            "put": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Lets a customer approve or reject a Workdone through the token link sent to them",
                "description": "Handles lets a customer approve or reject a Workdone through the token link sent to them",
                "externalDocs": {
                    "description": "Help: Approval (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/approval/"
                },
                "operationId": "put_api_workdone_approve_client",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Workdone id",
                                        "type": "integer"
                                    },
                                    "is_client_approved": {
                                        "description": "Whether the customer approves the work",
                                        "type": "boolean"
                                    },
                                    "comment": {
                                        "description": "Customer comment stored with the approval",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Workdone (serializer groups workdone, workdone_all), or { error_slug: alert.incorrect_url | alert.incorrect_report }",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone25"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Neither a share token nor a worker credential"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    },
                    {
                        "route": "/terake/worktimetable",
                        "title": "Worktime table",
                        "help": {
                            "et": "https://help.terake.com/et/terake/worktimetable/",
                            "en": "https://help.terake.com/en/terake/worktimetable/"
                        }
                    }
                ]
            }
        },
        "/api/workdones/{wdid}/recalcmaterialusages": {
            "post": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Recalc material usage for workdone",
                "description": "recalc MaterialUsage for workdone",
                "externalDocs": {
                    "description": "Help: Detail view (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/detail/"
                },
                "operationId": "post_api_workdones_recalcmaterialusages",
                "parameters": [
                    {
                        "name": "wdid",
                        "in": "path",
                        "description": "Workdone id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "recalc": {
                                        "description": "Recalculation instructions, keyed by material usage id.",
                                        "type": "object"
                                    },
                                    "wdid": {
                                        "description": "Bounded Workdone ID",
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Workdone (serializer groups workdone, workdone_all, owner, classificator, geo)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone26"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "No recalculation array, or the Workdone has no agrifield"
                    },
                    "403": {
                        "description": "The caller may not modify this Workdone"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    }
                ]
            }
        },
        "/api/workdones/{wdid}/materialusages": {
            "get": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Workdone collection ",
                "description": "Returns Workdone Material collection",
                "externalDocs": {
                    "description": "Help: Completed works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workdones/"
                },
                "operationId": "get_api_workdones_materialusages_list",
                "parameters": [
                    {
                        "name": "wdid",
                        "in": "path",
                        "description": "Workdone id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The material usages of the Workdone (serializer groups workdone, workdone_all, owner, classificator, geo)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone26"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found, deleted, or not visible to the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/materials/",
                            "en": "https://help.terake.com/en/admin/main/materials/"
                        }
                    },
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/fieldbook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/materials/",
                            "en": "https://help.terake.com/en/fieldbook/materials/"
                        }
                    },
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materials/",
                            "en": "https://help.terake.com/en/storage/materials/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/vehiclebook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/materials/",
                            "en": "https://help.terake.com/en/vehiclebook/materials/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Creates new MaterialUsage for workdone",
                "description": "Creates new MaterialUsage for workdone",
                "externalDocs": {
                    "description": "Help: Detail view (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/detail/"
                },
                "operationId": "post_api_workdones_materialusages_post",
                "parameters": [
                    {
                        "name": "wdid",
                        "in": "path",
                        "description": "Workdone id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "harvest": {
                                        "description": "Harvest record written alongside the material usage.",
                                        "type": "object"
                                    },
                                    "wdid": {
                                        "description": "Bounded Workdone ID",
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Workdone (serializer groups workdone, workdone_all, owner, classificator, geo)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone26"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Workdone"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    }
                ]
            }
        },
        "/api/materialusages/{usageid}": {
            "delete": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Deletes a material usage of a Workdone",
                "description": "Deletes a material usage of a Workdone. Returns the parent Workdone, not the removed usage",
                "externalDocs": {
                    "description": "Help: Activities (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                },
                "operationId": "delete_api_materialusages_delete",
                "parameters": [
                    {
                        "name": "usageid",
                        "in": "path",
                        "description": "MaterialUsage id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Workdone (serializer groups workdone, workdone_all, owner, classificator, geo)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone26"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the Workdone"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/afworkandmaterialusage",
                        "title": "Activities",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/afworkandmaterialusage/",
                            "en": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                        }
                    }
                ]
            }
        },
        "/api/workdones/{wdid}/materialusages/{usageid}": {
            "delete": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Deletes a material usage of a Workdone",
                "description": "Deletes a material usage of a Workdone. Returns the parent Workdone, not the removed usage",
                "externalDocs": {
                    "description": "Help: Completed works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workdones/"
                },
                "operationId": "delete_api_workdones_materialusages_delete",
                "parameters": [
                    {
                        "name": "usageid",
                        "in": "path",
                        "description": "MaterialUsage id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "wdid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Workdone (serializer groups workdone, workdone_all, owner, classificator, geo)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone26"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify the Workdone"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/materials/",
                            "en": "https://help.terake.com/en/admin/main/materials/"
                        }
                    },
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/fieldbook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/materials/",
                            "en": "https://help.terake.com/en/fieldbook/materials/"
                        }
                    },
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materials/",
                            "en": "https://help.terake.com/en/storage/materials/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/vehiclebook/materials",
                        "title": "Materials",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/materials/",
                            "en": "https://help.terake.com/en/vehiclebook/materials/"
                        }
                    }
                ]
            }
        },
        "/api/office-hours": {
            "get": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Office hours in period",
                "externalDocs": {
                    "description": "Help: Projects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/projects/"
                },
                "operationId": "get_api_office_hours",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Start of the period. The time part may be omitted and defaults to 00:00:00.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "End of the period. The time part may be omitted and defaults to 00:00:00, so a bare date excludes that day itself - send the next day or add a time.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/projects/",
                            "en": "https://help.terake.com/en/admin/main/projects/"
                        }
                    },
                    {
                        "route": "/plans/projects",
                        "title": "Projects",
                        "help": {
                            "et": "https://help.terake.com/et/plans/projects/",
                            "en": "https://help.terake.com/en/plans/projects/"
                        }
                    }
                ]
            }
        },
        "/api/workdones/{id}": {
            "get": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Workdone by ID or UUID",
                "description": "Returns Workdone by ID or UUID",
                "externalDocs": {
                    "description": "Help: My work history (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/myworks/"
                },
                "operationId": "get_api_workdones_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workdone id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Workdone (serializer groups workdone, workdone_all, owner, classificator, geo)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone26"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found, deleted, or not visible to the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/afworkandmaterialusage",
                        "title": "Activities",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/afworkandmaterialusage/",
                            "en": "https://help.terake.com/en/fieldbook/afworkandmaterialusage/"
                        }
                    },
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    },
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/reports/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/reports/production/",
                            "en": "https://help.terake.com/en/reports/production/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/storage/production/",
                            "en": "https://help.terake.com/en/storage/production/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/terake/worktimetable",
                        "title": "Worktime table",
                        "help": {
                            "et": "https://help.terake.com/et/terake/worktimetable/",
                            "en": "https://help.terake.com/en/terake/worktimetable/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Modify Workdone",
                "description": "Modify Workdone",
                "externalDocs": {
                    "description": "Help: Detail view (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/detail/"
                },
                "operationId": "put_api_workdones_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workdone id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Must equal the id in the path",
                                        "type": "integer"
                                    },
                                    "pause_minutes": {
                                        "description": "Pause as HH:MM, or as a whole number of minutes below 1440. Converted into pause_total_duration seconds. Ignored when the workdone follows a rosteritem.",
                                        "type": "string"
                                    },
                                    "description": {
                                        "description": "Trimmed and cut to 1000 characters",
                                        "type": "string"
                                    },
                                    "description_extended": {
                                        "description": "Trimmed and cut to 1000 characters",
                                        "type": "string"
                                    },
                                    "start_time": {
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "stop_time": {
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "is_approved": {
                                        "type": "boolean"
                                    },
                                    "is_forbidden_for_fieldbook": {
                                        "type": "boolean"
                                    },
                                    "is_forbidden_for_customer": {
                                        "type": "boolean"
                                    },
                                    "is_unfinished": {
                                        "type": "boolean"
                                    },
                                    "is_invoiced": {
                                        "type": "boolean"
                                    },
                                    "adblue": {
                                        "type": "integer"
                                    },
                                    "kilometer_start": {
                                        "type": "integer"
                                    },
                                    "kilometer_stop": {
                                        "type": "integer"
                                    },
                                    "fuel_consumption": {
                                        "type": "integer"
                                    },
                                    "hectares_served": {
                                        "type": "number"
                                    },
                                    "main_facility_start_hour": {
                                        "type": "number"
                                    },
                                    "main_facility_stop_hour": {
                                        "type": "number"
                                    },
                                    "worker": {
                                        "description": "Worker { \"id\": N }; ignored when is_anonymous is set",
                                        "type": "object"
                                    },
                                    "worktype": {
                                        "description": "Worktype { \"id\": N }",
                                        "type": "object"
                                    },
                                    "main_facility": {
                                        "description": "Facility { \"id\": N }",
                                        "type": "object"
                                    },
                                    "secondary_facility": {
                                        "description": "Facility { \"id\": N }",
                                        "type": "object"
                                    },
                                    "agrifield": {
                                        "description": "Agrifield { \"id\": N }",
                                        "type": "object"
                                    },
                                    "cost_account": {
                                        "description": "CostAccount { \"id\": N }",
                                        "type": "object"
                                    },
                                    "maintenance_unit": {
                                        "description": "Facility { \"id\": N }",
                                        "type": "object"
                                    },
                                    "customer": {
                                        "description": "Customer { \"id\": N }",
                                        "type": "object"
                                    },
                                    "project": {
                                        "description": "Project { \"id\": N }",
                                        "type": "object"
                                    },
                                    "department": {
                                        "description": "Department { \"id\": N }",
                                        "type": "object"
                                    },
                                    "rosteritem": {
                                        "description": "Rosteritem { \"id\": N }",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Workdone (serializer groups workdone, workdone_all, owner, classificator, geo)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone26"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Workdone"
                    },
                    "404": {
                        "description": "Not found, or the body id differs from the path id"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Delete Workdone by ID or UUID",
                "description": "Deletes Workdone by ID or UUID. Returns the deleted Workdone. Refuelling Workdones cannot be\ndeleted here: those answer 403 with { error: { slug: message.delete_refueling_from } }",
                "externalDocs": {
                    "description": "Help: Detail view (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/detail/"
                },
                "operationId": "delete_api_workdones_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workdone id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Workdone (serializer groups workdone, workdone_all, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone27"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Refuelling work, or the caller may not modify this Workdone"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    }
                ]
            }
        },
        "/api/workdones": {
            "get": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Workdones detailed list by period",
                "description": "Workdones detailed list by period. Returns { pagination, collection } for the requested page of\nWorkdones\n\nThe response has a fixed structure and may not include every field these records carry elsewhere in the API.",
                "externalDocs": {
                    "description": "Help: Detail view (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/detail/"
                },
                "operationId": "get_api_workdones_list",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted. Workers without ROLE_ADMIN or ROLE_OBSERVER, and any request with myworks set, never see work that started before the first day of the month 3 months ago, whatever from says.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by one Worker",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by one Worktype",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by one Main Facility",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by one Cost Account",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "workobject_id",
                        "in": "query",
                        "description": "Filter by one Workobject",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "only_notapproved",
                        "in": "query",
                        "description": "if set, show only not approved works",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "myworks",
                        "in": "query",
                        "description": "If set, show only requesting person own workdones",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "current_page",
                        "in": "query",
                        "description": "Page number, 1-based. Defaults to 1.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "department_ids",
                        "in": "query",
                        "description": "Comma-separated department ids to restrict the result to.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "dimension",
                        "in": "query",
                        "description": "Sent either as dimension[]=record&dimension[]=worker or as a comma separated list, dimension=record,worker - the two are equivalent. Not a grouping parameter on this endpoint: only two flags are read, 'only_notapproved' limits the result to work that has not been approved, and 'incl_zero_works' keeps work whose start and stop time are equal.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "facility_id",
                        "in": "query",
                        "description": "Filter by facility id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "ids",
                        "in": "query",
                        "description": "JSON array of workdone ids. Capped at the first 100.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "no_dates",
                        "in": "query",
                        "description": "Truthy ignores the from/to range and returns records regardless of date. Workers without ROLE_ADMIN, ROLE_OBSERVER, ROLE_DISPATCHER, ROLE_VEHICLE_SERVICE or ROLE_STORAGE still never see work that started before the first day of the month 3 months ago.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "output_type",
                        "in": "query",
                        "description": "Response format: 0 JSON, 1 xls, 2 pdf.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Page size. Defaults to 500.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by project id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Create new Workdone",
                "description": "Creates new Workdone",
                "externalDocs": {
                    "description": "Help: Detail view (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/detail/"
                },
                "operationId": "post_api_workdones_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "based_on_entity_id": {
                                        "description": "Existing work the new one is copied from.",
                                        "type": "integer"
                                    },
                                    "is_anonymous": {
                                        "description": "Records the work against the anonymous worker of the company instead of the one in worker.",
                                        "type": "boolean"
                                    },
                                    "pause_minutes": {
                                        "description": "Pause as HH:MM, or as a whole number of minutes below 1440. Converted into pause_total_duration seconds.",
                                        "type": "string"
                                    },
                                    "description": {
                                        "description": "Trimmed and cut to 1000 characters",
                                        "type": "string"
                                    },
                                    "description_extended": {
                                        "description": "Trimmed and cut to 1000 characters",
                                        "type": "string"
                                    },
                                    "start_time": {
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "stop_time": {
                                        "type": "string",
                                        "format": "date-time"
                                    },
                                    "is_approved": {
                                        "type": "boolean"
                                    },
                                    "is_forbidden_for_fieldbook": {
                                        "type": "boolean"
                                    },
                                    "is_forbidden_for_customer": {
                                        "type": "boolean"
                                    },
                                    "is_unfinished": {
                                        "type": "boolean"
                                    },
                                    "is_invoiced": {
                                        "type": "boolean"
                                    },
                                    "adblue": {
                                        "type": "integer"
                                    },
                                    "kilometer_start": {
                                        "type": "integer"
                                    },
                                    "kilometer_stop": {
                                        "type": "integer"
                                    },
                                    "fuel_consumption": {
                                        "type": "integer"
                                    },
                                    "hectares_served": {
                                        "type": "number"
                                    },
                                    "main_facility_start_hour": {
                                        "type": "number"
                                    },
                                    "main_facility_stop_hour": {
                                        "type": "number"
                                    },
                                    "worker": {
                                        "description": "Worker { \"id\": N }; ignored when is_anonymous is set",
                                        "type": "object"
                                    },
                                    "worktype": {
                                        "description": "Worktype { \"id\": N }",
                                        "type": "object"
                                    },
                                    "main_facility": {
                                        "description": "Facility { \"id\": N }",
                                        "type": "object"
                                    },
                                    "secondary_facility": {
                                        "description": "Facility { \"id\": N }",
                                        "type": "object"
                                    },
                                    "agrifield": {
                                        "description": "Agrifield { \"id\": N }",
                                        "type": "object"
                                    },
                                    "cost_account": {
                                        "description": "CostAccount { \"id\": N }",
                                        "type": "object"
                                    },
                                    "maintenance_unit": {
                                        "description": "Facility { \"id\": N }",
                                        "type": "object"
                                    },
                                    "customer": {
                                        "description": "Customer { \"id\": N }",
                                        "type": "object"
                                    },
                                    "project": {
                                        "description": "Project { \"id\": N }",
                                        "type": "object"
                                    },
                                    "department": {
                                        "description": "Department { \"id\": N }",
                                        "type": "object"
                                    },
                                    "rosteritem": {
                                        "description": "Rosteritem { \"id\": N }",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Workdone (serializer groups workdone, workdone_all, owner, classificator, geo)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone26"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    }
                ]
            }
        },
        "/api/workdones/{id}/files": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "List all files related with parent object",
                "description": "Lists all files related with parent object. Returns array of Fileitem objects",
                "operationId": "get_api_workdones_get_files",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent whose files are listed, of the type named in the route: Workdone, Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The live file relations, each with its Fileitem (serializer groups fileitems, baseattribute)"
                    },
                    "404": {
                        "description": "Workdone not found"
                    }
                }
            },
            "post": {
                "tags": [
                    "Files"
                ],
                "summary": "Add new file to parent object",
                "description": "Expected content must be formatted either as application/json or multipart/form-data.\nIn case of application/json object properties are 'name' - file name, 'content' - base64 encoded file content, 'mime_type' - mime type, 'device_uuid' - uploading device uuid.\nOnly content is mandatory, others are optional. Returns array of newly created Fileitem objects.",
                "externalDocs": {
                    "description": "Help: Detail view (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/detail/"
                },
                "operationId": "post_api_workdones_file_upload_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent the file hangs off, of the type named in the route: Workdone, Facility, Worker, Plan, Faultitem, facility part, inspection case, inspection case item, Company or Workobject",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "file": {
                                        "description": "File sent as a multipart upload, when content is not used.",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        },
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "document_type_id": {
                                        "description": "Document type stored against the uploaded file.",
                                        "type": "integer"
                                    },
                                    "content": {
                                        "description": "File contents as a base64 data URI. Sent instead of a multipart upload.",
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "mime_type": {
                                        "type": "string"
                                    },
                                    "file_extension": {
                                        "type": "string"
                                    },
                                    "device_uuid": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The new file relations, each with its Fileitem (serializer groups fileitems, baseattribute); { error: message.file_too_big } for a multipart file over the company limit"
                    },
                    "404": {
                        "description": "Workdone not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    }
                ]
            }
        },
        "/api/workdones/{id}/deleted-files": {
            "get": {
                "tags": [
                    "Files"
                ],
                "summary": "Files that were deleted from the parent object, for the 30-day recycle bin",
                "description": "Get Deleted Files related for Entity",
                "operationId": "get_api_workdones_get_deleted_files",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Id of the parent whose deleted files are listed, of the type named in the route: Workdone, Facility, Worker, Plan, Faultitem or facility part",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "_route",
                        "in": "query",
                        "description": "Query parameter _route",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted file relations, each with its Fileitem (serializer groups fileitems, baseattribute)"
                    },
                    "404": {
                        "description": "Workdone not found"
                    }
                }
            }
        },
        "/api/workdones/{id}/files/{uuid}": {
            "delete": {
                "tags": [
                    "Files"
                ],
                "summary": "Delete file",
                "description": "Delete file relation with object. If there's no other relations, deletes also Fileitem",
                "operationId": "delete_api_workdones_file_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workdone id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "File item ID or UUID",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Fileitem (serializer groups fileitems, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Fileitem2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Workdone"
                    },
                    "404": {
                        "description": "Fileitem or Workdone not found"
                    }
                }
            }
        },
        "/api/workdonehours": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Each worker's hours in the period by hour type: norm, overtime, night etc",
                "externalDocs": {
                    "description": "Help: My work history (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/myworks/"
                },
                "operationId": "get_api_workdonehours_month",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted. For workers without ROLE_ADMIN, ROLE_OBSERVER, ROLE_DISPATCHER, ROLE_VEHICLE_SERVICE or ROLE_STORAGE the period starts no earlier than the first day of the month 3 months ago, and num_days and the hours reported cover only the part of the period that is left.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "period",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The month this date falls in is the period returned. A month more than 3 months back comes back empty for workers who are subject to the limit described under from.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by one Worker",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by one Worktype",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by one Main Facility",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by one Cost Account",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by one Project",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "department_ids",
                        "in": "query",
                        "description": "Comma-separated department ids to restrict the result to.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "group_ids",
                        "in": "query",
                        "description": "Comma-separated worker group ids.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/terake/worktimetable",
                        "title": "Worktime table",
                        "help": {
                            "et": "https://help.terake.com/et/terake/worktimetable/",
                            "en": "https://help.terake.com/en/terake/worktimetable/"
                        }
                    }
                ]
            }
        },
        "/api/workdonehours/{period}": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Each worker's hours in the period by hour type: norm, overtime, night etc",
                "externalDocs": {
                    "description": "Help: My work history (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/myworks/"
                },
                "operationId": "get_api_workdonehours",
                "parameters": [
                    {
                        "name": "period",
                        "in": "path",
                        "description": "Date as Y-m-d, for example 2026-08-28. The month this date falls in is the period returned. A month more than 3 months back comes back empty for workers who are subject to the limit described under from.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted. For workers without ROLE_ADMIN, ROLE_OBSERVER, ROLE_DISPATCHER, ROLE_VEHICLE_SERVICE or ROLE_STORAGE the period starts no earlier than the first day of the month 3 months ago, and num_days and the hours reported cover only the part of the period that is left.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Filter by one Worker",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Filter by one Worktype",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Filter by one Main Facility",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "Filter by one Cost Account",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by one Project",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "department_ids",
                        "in": "query",
                        "description": "Comma-separated department ids to restrict the result to.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "group_ids",
                        "in": "query",
                        "description": "Comma-separated worker group ids.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    },
                    {
                        "route": "/terake/worktimetable",
                        "title": "Worktime table",
                        "help": {
                            "et": "https://help.terake.com/et/terake/worktimetable/",
                            "en": "https://help.terake.com/en/terake/worktimetable/"
                        }
                    }
                ]
            }
        },
        "/api/workdones-list/{ids}": {
            "get": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Simplified Workdone list for the ids given in the URL, at most 100",
                "description": "Simplified Workdone list for the ids given in the URL, at most 100 of them.\n\nEach row carries an agrifield block of { id, name, field_number }, or null, when\nshow_agrifield is set. Rows have a fixed, reduced field set \u2014 not the full Workdone\nrepresentation returned by other endpoints.",
                "externalDocs": {
                    "description": "Help: Completed works (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workdones/"
                },
                "operationId": "get_api_workdones_simplified_list",
                "parameters": [
                    {
                        "name": "show_agrifield",
                        "in": "query",
                        "description": "Truthy includes workobject data in each row.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "ids",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    }
                ]
            }
        },
        "/api/startwork": {
            "post": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Starts work - creates an open Workdone for the calling worker",
                "description": "Starts work - creates an open Workdone for the calling worker",
                "externalDocs": {
                    "description": "Help: Start work (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/startwork/"
                },
                "operationId": "post_api-startwork",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "description": {
                                        "description": "Free text, trimmed and cut to 1000 characters",
                                        "type": "string"
                                    },
                                    "worker": {
                                        "description": "Worker { \"id\": N }; defaults to the caller",
                                        "type": "object"
                                    },
                                    "worktype": {
                                        "description": "Worktype { \"id\": N }",
                                        "type": "object"
                                    },
                                    "main_facility": {
                                        "description": "Main facility { \"id\": N }",
                                        "type": "object"
                                    },
                                    "secondary_facility": {
                                        "description": "Secondary facility { \"id\": N }",
                                        "type": "object"
                                    },
                                    "workobject": {
                                        "description": "Workobject { \"id\": N }",
                                        "type": "object"
                                    },
                                    "cost_account": {
                                        "description": "Cost account { \"id\": N }",
                                        "type": "object"
                                    },
                                    "project": {
                                        "description": "Project { \"id\": N }",
                                        "type": "object"
                                    },
                                    "customer": {
                                        "description": "Customer { \"id\": N }",
                                        "type": "object"
                                    },
                                    "maintenance_unit": {
                                        "description": "Maintenance unit (a facility) { \"id\": N }",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The started Workdone (serializer groups realtime, workdone, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone28"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/startwork",
                        "title": "Start work",
                        "help": {
                            "et": "https://help.terake.com/et/my/startwork/",
                            "en": "https://help.terake.com/en/my/startwork/"
                        }
                    }
                ]
            }
        },
        "/api/stopwork/{id}": {
            "put": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Stops Workdone",
                "description": "Stops Workdone",
                "externalDocs": {
                    "description": "Help: Start work (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/startwork/"
                },
                "operationId": "put_api-stopwork",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workdone id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The stopped Workdone (serializer groups realtime, workdone, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Workdone28"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Workdone"
                    },
                    "404": {
                        "description": "Not found, or the caller is neither its worker nor an administrator"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/startwork",
                        "title": "Start work",
                        "help": {
                            "et": "https://help.terake.com/et/my/startwork/",
                            "en": "https://help.terake.com/en/my/startwork/"
                        }
                    }
                ]
            }
        },
        "/api/workdone/approve/{id}": {
            "put": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Approves the Workdone",
                "description": "Approves the Workdone",
                "externalDocs": {
                    "description": "Help: Approval (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/approval/"
                },
                "operationId": "put_api-workdone-approve",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workdone id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Workdone as a row of the work list (the shape of GET /api/workdones collection items)"
                    },
                    "403": {
                        "description": "The caller may not modify this Workdone"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkplanning",
                        "title": "Fieldwork planning",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkplanning/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkplanning/"
                        }
                    },
                    {
                        "route": "/my/myworks",
                        "title": "My work history",
                        "help": {
                            "et": "https://help.terake.com/et/my/myworks/",
                            "en": "https://help.terake.com/en/my/myworks/"
                        }
                    },
                    {
                        "route": "/reports/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/reports/materialusage/",
                            "en": "https://help.terake.com/en/reports/materialusage/"
                        }
                    },
                    {
                        "route": "/reports/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/reports/production/",
                            "en": "https://help.terake.com/en/reports/production/"
                        }
                    },
                    {
                        "route": "/storage/materialusage",
                        "title": "Material usage",
                        "help": {
                            "et": "https://help.terake.com/et/storage/materialusage/",
                            "en": "https://help.terake.com/en/storage/materialusage/"
                        }
                    },
                    {
                        "route": "/storage/production",
                        "title": "Production",
                        "help": {
                            "et": "https://help.terake.com/et/storage/production/",
                            "en": "https://help.terake.com/en/storage/production/"
                        }
                    },
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    },
                    {
                        "route": "/terake/worktimetable",
                        "title": "Worktime table",
                        "help": {
                            "et": "https://help.terake.com/et/terake/worktimetable/",
                            "en": "https://help.terake.com/en/terake/worktimetable/"
                        }
                    }
                ]
            }
        },
        "/api/workdonesbyperiod": {
            "get": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Worked hours per worker per day over a period",
                "operationId": "get_api_workdonesbyperiod",
                "parameters": [
                    {
                        "name": "only_notapproved",
                        "in": "query",
                        "description": "",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. Defaults to the first day of the current month when omitted.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Date as Y-m-d, for example 2026-08-28. The whole of that day is included. When omitted the period runs to the end of the current month.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "Worker id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Worktype id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "main_facility_id",
                        "in": "query",
                        "description": "Facility id used as the main facility",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cost_account_id",
                        "in": "query",
                        "description": "CostAccount id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "myworks",
                        "in": "query",
                        "description": "",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "description": "Filter by project id.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "/api/workers/brigade/realtime": {
            "get": {
                "tags": [
                    "Workers"
                ],
                "summary": "Brigade member start or stop",
                "description": "Brigade member start or stop. Returns the brigade realtime rows: brigade members, then the company's other foreman-manageable workers, those at work first; [] when the caller is not a foreman.",
                "operationId": "get_api-workers-brigade-realtime",
                "parameters": [
                    {
                        "name": "brigade_worker_id",
                        "in": "query",
                        "description": "Brigade member id; with action, starts or stops that worker's work",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "WorkType id; required with brigade_worker_id",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "action",
                        "in": "query",
                        "description": "start|stop",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Rows { worker: { id, fullname, uuid, is_brigade_member }, realtime: { start_timestamp, workdone_id, worktype_name, main_facility_name, secondary_facility_name, workobject_name } }"
                    }
                }
            }
        },
        "/api/workers/brigade/start": {
            "put": {
                "tags": [
                    "Workers"
                ],
                "summary": "Start brigade workers work",
                "description": "Starts work for each listed worker who has none open, with the attributes given; the open work of the others gets these attributes. Returns the brigade realtime rows ([] when the caller is not a foreman).",
                "operationId": "put_api-workers-brigade-strt-put",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "worker_ids": {
                                        "description": "Brigade member ids",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "attrs": {
                                        "description": "worktype, main_facility, secondary_facility and workobject, each { \"id\": N }",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The realtime rows of GET /api/workers/brigade/realtime"
                    },
                    "404": {
                        "description": "An unknown worker, worktype, facility or workobject"
                    }
                }
            }
        },
        "/api/workers/brigade/stop": {
            "put": {
                "tags": [
                    "Workers"
                ],
                "summary": "Stop brigade workers work",
                "description": "Stops the open work of each listed worker. Returns the brigade realtime rows ([] when the caller is not a foreman).",
                "operationId": "put_api-workers-brigade-stop-put",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "worker_ids": {
                                        "description": "Brigade member ids",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The realtime rows of GET /api/workers/brigade/realtime"
                    },
                    "404": {
                        "description": "An unknown worker"
                    }
                }
            }
        },
        "/api/workers/setpassword/{id}": {
            "put": {
                "tags": [
                    "Workers"
                ],
                "summary": "Sets a new password for a Worker",
                "description": "Sets a new password for a Worker. Send password1 and password2, or a password_change object\nholding both. An admin may target another Worker; anyone else may only change their own (and\nthen the linked user account's too). Returns the updated Worker, or { error: slug }: alert.not_allowed,\nregister.passwords_does_not_match, register.password_too_short",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "put_api-workers-setpassword/-put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worker id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "password1": {
                                        "description": "New password. Sent flat, or inside password_change.",
                                        "type": "string"
                                    },
                                    "password2": {
                                        "description": "New password repeated.",
                                        "type": "string"
                                    },
                                    "password_change": {
                                        "description": "password1 and password2, used when the flat password1 is empty",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Worker (serializer groups worker, workerlist, baseattribute, classificator, calendarevent, auditcolumns), or { error: slug }",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Worker59"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Unknown worker, or no password sent"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my/changepassword",
                        "title": "Change password",
                        "help": {
                            "et": "https://help.terake.com/et/my/changepassword/",
                            "en": "https://help.terake.com/en/my/changepassword/"
                        }
                    }
                ]
            }
        },
        "/api/workers/change_username/{id}": {
            "put": {
                "tags": [
                    "Workers"
                ],
                "summary": "Change Worker username",
                "description": "Changes Worker username. An admin may change any worker of the company, anyone else only their own. Returns the stored username as { username: ... }, or { error: slug }: alert.not_allowed, message.username_must_have_letter, message.username_too_short, message.username_must_contans_norm_chars, message.username_exists",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "put_api-workers-change-username-put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worker id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "username": {
                                        "description": "New username for the worker.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ username } or { error: slug }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/workers/setroles/{id}": {
            "put": {
                "tags": [
                    "Workers"
                ],
                "summary": "Replaces the roles of a Worker",
                "description": "Replaces the roles of a Worker (ROLE_ADMIN or ROLE_PERSONAL). Globally scoped roles are never removed or added, except ROLE_AI_ENABLED by a ROLE_SUPERADMIN. Returns the updated Worker, or { error: alert.not_allowed }",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "put_api-workers-setroles-put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worker id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "role_ids": {
                                        "description": "Array of role id's",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Worker (serializer groups default, worker, workerlist, baseattribute, auditcolumns), or { error: slug }",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Worker60"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Unknown worker or role"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/worker-generatepin/{id}": {
            "put": {
                "tags": [
                    "Workers"
                ],
                "summary": "Generates factory credentials (PIN) for a Worker",
                "description": "Generates factory credentials (PIN) for a Worker: a new four-digit PIN no other worker of the company has. Returns the credentials with the PIN.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "put_api-worker-generate-pin-put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worker id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The WorkerFactoryCredentials (serializer group factory)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/WorkerFactoryCredentials2"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Worker"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/my/roster-visibility": {
            "post": {
                "tags": [
                    "Workers"
                ],
                "summary": "Shows or hides the calendar for the calling Worker",
                "description": "Sets the calling Worker's roster visibility. Returns the Worker in the group rostervisibility.",
                "externalDocs": {
                    "description": "Help: My profile (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/profile/"
                },
                "operationId": "post_api-my-roster-visibility",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "RosterVisibility id",
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Worker (serializer group rostervisibility)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Worker61"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Unknown roster visibility"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/profile",
                        "title": "My profile",
                        "help": {
                            "et": "https://help.terake.com/et/my/profile/",
                            "en": "https://help.terake.com/en/my/profile/"
                        }
                    }
                ]
            }
        },
        "/api/my/apikey": {
            "get": {
                "tags": [
                    "Workers"
                ],
                "summary": "Returns the calling Worker's own API key",
                "description": "Returns the calling Worker's own API key as { apikey }, and records the viewing in the Worker's change history. The key is withheld (null) wherever API keys may not appear in a response.",
                "externalDocs": {
                    "description": "Help: My profile (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/profile/"
                },
                "operationId": "get_api-my-apikey-get",
                "responses": {
                    "200": {
                        "description": "{ apikey }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/profile",
                        "title": "My profile",
                        "help": {
                            "et": "https://help.terake.com/et/my/profile/",
                            "en": "https://help.terake.com/en/my/profile/"
                        }
                    }
                ]
            }
        },
        "/api/my/apikey/renew": {
            "post": {
                "tags": [
                    "Workers"
                ],
                "summary": "Replaces the calling Worker's API key at once",
                "description": "Replaces the calling Worker's API key at once; every client signed in with the previous key has to sign in again. Returns { apikey }: the new key, withheld (null) wherever API keys may not appear in a response.",
                "externalDocs": {
                    "description": "Help: My profile (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/profile/"
                },
                "operationId": "post_api-my-apikey-renew",
                "responses": {
                    "200": {
                        "description": "{ apikey }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/profile",
                        "title": "My profile",
                        "help": {
                            "et": "https://help.terake.com/et/my/profile/",
                            "en": "https://help.terake.com/en/my/profile/"
                        }
                    }
                ]
            }
        },
        "/api/my/apikey/renew-at-next-login": {
            "post": {
                "tags": [
                    "Workers"
                ],
                "summary": "Marks the calling Worker's API key to be replaced at the next sign-in",
                "description": "The key keeps working until the Worker signs in again, and is replaced then. Returns { success: true }",
                "externalDocs": {
                    "description": "Help: My profile (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/profile/"
                },
                "operationId": "post_api-my-apikey-renew-at-next-login",
                "responses": {
                    "200": {
                        "description": "{ success: true }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/profile",
                        "title": "My profile",
                        "help": {
                            "et": "https://help.terake.com/et/my/profile/",
                            "en": "https://help.terake.com/en/my/profile/"
                        }
                    }
                ]
            }
        },
        "/api/user/": {
            "post": {
                "tags": [
                    "Workers"
                ],
                "summary": "Creates a user account linked to a Google or Facebook identity",
                "description": "Writes firstname, lastname and email onto the calling Worker's user account, created when there is none, and makes the Worker its default. Returns the User.",
                "operationId": "post_api-post-user",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "firstname": {
                                        "description": "First name of the account holder",
                                        "type": "string"
                                    },
                                    "lastname": {
                                        "description": "Last name of the account holder",
                                        "type": "string"
                                    },
                                    "email": {
                                        "description": "E-mail, also used as the username",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The User (serializer groups auth, auth_user; no API keys)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/User7"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/relate/{provider}/{token}": {
            "post": {
                "tags": [
                    "Workers"
                ],
                "summary": "Links an existing Worker to a Google or Facebook identity",
                "description": "Links the calling Worker to a Google (ID token) or Facebook (access token) identity. Returns the User, or { error: profile.social_media_relation_error } for another provider.",
                "externalDocs": {
                    "description": "Help: My profile (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/profile/"
                },
                "operationId": "post_api-relate-socialmedia",
                "parameters": [
                    {
                        "name": "provider",
                        "in": "path",
                        "description": "google or facebook",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "token",
                        "in": "path",
                        "description": "The provider's token",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The User (serializer groups auth, auth_user; no API keys), or { error: slug }",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/User7"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/profile",
                        "title": "My profile",
                        "help": {
                            "et": "https://help.terake.com/et/my/profile/",
                            "en": "https://help.terake.com/en/my/profile/"
                        }
                    }
                ]
            }
        },
        "/api/unrelate/{provider}": {
            "post": {
                "tags": [
                    "Workers"
                ],
                "summary": "Unlinks a Worker from a Google or Facebook identity",
                "description": "Clears the google or facebook id of the calling Worker's user account. Returns { success: true }",
                "externalDocs": {
                    "description": "Help: My profile (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/my/profile/"
                },
                "operationId": "post_api-unelate-socialmedia",
                "parameters": [
                    {
                        "name": "provider",
                        "in": "path",
                        "description": "google or facebook",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ success: true }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/profile",
                        "title": "My profile",
                        "help": {
                            "et": "https://help.terake.com/et/my/profile/",
                            "en": "https://help.terake.com/en/my/profile/"
                        }
                    }
                ]
            }
        },
        "/api/workers": {
            "get": {
                "tags": [
                    "Workers"
                ],
                "summary": "All Workers list",
                "description": "Workers list",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "get_api-workers-get-collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Return only records updated on or after Unix timestamp",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1 then return the archived records instead",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Narrows the list to a department and its direct children (and workers without department)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Workers (serializer groups workerlist, baseattribute, department)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Worker63"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Workers"
                ],
                "summary": "Create Worker",
                "description": "Creates new Worker. Administrators only; others get { error: alert.not_allowed }.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "post_api-workers-post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "firstname": {
                                        "description": "Required",
                                        "type": "string"
                                    },
                                    "lastname": {
                                        "description": "Required",
                                        "type": "string"
                                    },
                                    "password1": {
                                        "description": "Password (at least six characters)",
                                        "type": "string"
                                    },
                                    "password2": {
                                        "description": "Password repeat",
                                        "type": "string"
                                    },
                                    "import_type": {
                                        "description": "\"file\": password1 is used for both",
                                        "type": "string"
                                    },
                                    "email": {
                                        "description": "Links the worker to the user account with this e-mail, created when there is none",
                                        "type": "string"
                                    },
                                    "send_welcome_letter": {
                                        "description": "Sends the welcome letter to email. Defaults to the company setting when omitted.",
                                        "type": "boolean"
                                    },
                                    "language_code": {
                                        "description": "Language of the welcome letter. Defaults to the company language.",
                                        "type": "string"
                                    },
                                    "modification_start_time": {
                                        "description": "Start of the workplace period. Defaults to 1970-01-01. Y-m-d H:i:s",
                                        "type": "string"
                                    },
                                    "phone": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    },
                                    "personal_code": {
                                        "type": "string"
                                    },
                                    "profession": {
                                        "description": "{ \"id\": N }",
                                        "type": "object"
                                    },
                                    "department": {
                                        "description": "{ \"id\": N }",
                                        "type": "object"
                                    },
                                    "boss": {
                                        "description": "{ \"id\": N }",
                                        "type": "object"
                                    },
                                    "hourly_rate": {
                                        "type": "number"
                                    },
                                    "workload": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Worker (serializer groups default, worker, workerlist, baseattribute, classificator, calendarevent, auditcolumns), or { error: slug }",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Worker64"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    }
                ]
            }
        },
        "/api/workers/{id}": {
            "get": {
                "tags": [
                    "Workers"
                ],
                "summary": "Worker by ID or UUID.",
                "description": "Returns Worker by ID or UUID.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "get_api-workers-get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worker id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Worker uuid, used instead of the path id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Worker (serializer groups worker, workerlist, baseattribute, classificator, calendarevent, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Worker59"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Workers"
                ],
                "summary": "Modify Worker",
                "description": "Modify Worker. The body's \"id\" must be the path's; the fields are those of POST /api/workers, plus is_archived. The workplace period starts at modification_start_time (default today).",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "put_api-workers-put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worker id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Worker (serializer groups default, worker, workerlist, baseattribute, calendarevent, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Worker65"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this Worker"
                    },
                    "404": {
                        "description": "The body's id differs from the path's"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Workers"
                ],
                "summary": "Delete Worker by ID or UUID",
                "description": "Deletes Worker by ID or UUID",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "delete_api-workers-delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worker id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Worker (serializer groups worker, workerlist, baseattribute, classificator, calendarevent, auditcolumns)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Worker59"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    }
                ]
            }
        },
        "/api/workplace/{id}": {
            "put": {
                "tags": [
                    "Workers"
                ],
                "summary": "Modifies a Workplace",
                "description": "Modifies a Workplace. Returns the updated Worker, or { error: error.workplace_start_date_too_early } when the new start is not after the previous period's start",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "put_api-workplace-put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workplace id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "worker_id": {
                                        "description": "Worker the workplace belongs to",
                                        "type": "integer"
                                    },
                                    "start_time": {
                                        "description": "When the workplace period starts. Y-m-d H:i:s",
                                        "type": "string"
                                    },
                                    "profession": {
                                        "description": "{ \"id\": N }",
                                        "type": "object"
                                    },
                                    "department": {
                                        "description": "{ \"id\": N }",
                                        "type": "object"
                                    },
                                    "hourly_rate": {
                                        "type": "number"
                                    },
                                    "workload": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Worker (serializer groups worker, baseattribute, auditcolumns), or { error: slug }",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Worker66"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/send_welcome_letter/{id}": {
            "put": {
                "tags": [
                    "Workers"
                ],
                "summary": "Sends the welcome letter to a Worker",
                "description": "Sends the welcome letter to a Worker. Returns { result: OK }, or { error: login.error_email_or_username_not_found }",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "put_api-workers-sendwelcomeletter-put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worker id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "email": {
                                        "description": "Address the welcome letter is sent to; stored as the worker's e-mail",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "{ result: OK } or { error: slug }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/workers/approvables/{id}": {
            "put": {
                "tags": [
                    "Workers"
                ],
                "summary": "Replaces the set of Workers whose work this Worker may approve",
                "description": "Replaces the set of Workers whose work this Worker may approve. Returns the updated Worker",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "put_api-workers-setapprovables-put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worker (approver) id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "approvable_ids": {
                                        "description": "Approvables ids array, [1, 2, ...]",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Worker (serializer groups worker, workerlist, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Worker67"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Unknown worker"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/workers/brigade-members/{id}": {
            "get": {
                "tags": [
                    "Workers"
                ],
                "summary": "Brigade members of one worker acting as foreman, by worker id.",
                "description": "Brigade members of one worker acting as foreman, the foreman included: id, name, updated_at_timestamp and uuid, in the company's name order.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "get_api-workers-brigade-members-get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worker (foreman) id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Rows { id, name, updated_at_timestamp, uuid }"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Workers"
                ],
                "summary": "Replaces the brigade members of a Worker",
                "description": "Replaces the brigade members of a Worker. Returns the updated Worker",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "put_api-workers-brigade-members-put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worker (foreman) id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "brigade_member_ids": {
                                        "description": "List of subordinate id's",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Worker (serializer groups default, worker, workerlist, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Worker68"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Unknown worker"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/workers/priapayees/{id}": {
            "put": {
                "tags": [
                    "Workers"
                ],
                "summary": "Replaces the PRIA payees a Worker represents and the crop periods visible to them",
                "description": "Replaces the PRIA payees a Worker represents, the fields they may see and the crop periods visible to them; nothing changes unless pria_payee_ids is sent. Returns the updated Worker",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "put_api-workers-priapayees-put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Pria worker id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "pria_payee_ids": {
                                        "description": "List of Pria Payee id's",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "agrifield_ids": {
                                        "description": "Fields the worker may see",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "crop_periods_visible_ids": {
                                        "description": "List of Crop Period id's",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Worker (serializer groups default, worker, workerlist, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Worker68"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Unknown worker, payee, field or crop period"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/workersearch/{q}": {
            "get": {
                "tags": [
                    "Workers"
                ],
                "summary": "Searches the Workers visible to the caller by name",
                "description": "Full-text search over first name, last name, username, e-mail and personal code of the caller's company's workers (all companies for a super admin), at most 50. Fewer than four characters give { error }.",
                "operationId": "get_api-workersearch-get",
                "parameters": [
                    {
                        "name": "q",
                        "in": "path",
                        "description": "Search text",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Workers (serializer groups worker, workerlist, baseattribute, classificator, owner), or { error }",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Worker69"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/workers/last-seen/{id}": {
            "get": {
                "tags": [
                    "Workers"
                ],
                "summary": "Last recorded device access for one worker, by worker id or uuid",
                "description": "Last recorded device access for one worker: device_manufacturer, device_model, android_version, terake_version, last_access. false when the worker has never connected.",
                "externalDocs": {
                    "description": "Help: Worker settings (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/workers/"
                },
                "operationId": "get_api-worker-last-seen-online-get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worker id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The last access row, or false"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/workers",
                        "title": "Worker settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workers/",
                            "en": "https://help.terake.com/en/admin/workers/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            }
        },
        "/api/worker_groups": {
            "get": {
                "tags": [
                    "WorkerGroups"
                ],
                "summary": "All WorkerGroups list",
                "description": "The company's worker groups that are neither deleted nor archived, by name, with their worker_ids.",
                "externalDocs": {
                    "description": "Help: Roster timeline (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/schedule/"
                },
                "operationId": "get_api_worker_groups_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived groups and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of WorkerGroup (serializer group workergrouplist)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/WorkerGroup5"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/terake/worktimetable",
                        "title": "Worktime table",
                        "help": {
                            "et": "https://help.terake.com/et/terake/worktimetable/",
                            "en": "https://help.terake.com/en/terake/worktimetable/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "WorkerGroups"
                ],
                "summary": "Creates or modifies a WorkerGroup",
                "description": "Creates a WorkerGroup, or modifies the one the body names by \"id\" or \"uuid\". worker_ids is the full member list.",
                "externalDocs": {
                    "description": "Help: Planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/multiplan/"
                },
                "operationId": "post_api_worker_groups_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "WorkerGroup id. Only when modifying an existing record; leave it out to create a new one.",
                                        "type": "integer"
                                    },
                                    "uuid": {
                                        "description": "WorkerGroup uuid, instead of the id",
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "worker_ids": {
                                        "description": "Full member list of the group. Workers already in the group but not listed here are removed.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The WorkerGroup (serializer groups workergroup, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/WorkerGroup6"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "The group, or a listed worker, not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            }
        },
        "/api/worker_groups/{id}": {
            "get": {
                "tags": [
                    "WorkerGroups"
                ],
                "summary": "Get WorkerGroup",
                "description": "Returns WorkerGroup by ID or UUID, with its workers.",
                "externalDocs": {
                    "description": "Help: Planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/multiplan/"
                },
                "operationId": "get_api_worker_groups_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "WorkerGroup id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "WorkerGroup uuid, instead of the id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The WorkerGroup (serializer groups workergroup, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/WorkerGroup6"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "WorkerGroups"
                ],
                "summary": "Creates or modifies a WorkerGroup",
                "description": "Same action as POST: the group is named by \"id\" or \"uuid\" in the body; the path id is not read.",
                "externalDocs": {
                    "description": "Help: Planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/multiplan/"
                },
                "operationId": "put_api_worker_groups_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "WorkerGroup id. Only when modifying an existing record; leave it out to create a new one.",
                                        "type": "integer"
                                    },
                                    "uuid": {
                                        "description": "WorkerGroup uuid, instead of the id",
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "worker_ids": {
                                        "description": "Full member list of the group. Workers already in the group but not listed here are removed.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The WorkerGroup (serializer groups workergroup, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/WorkerGroup6"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "The group, or a listed worker, not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "WorkerGroups"
                ],
                "summary": "Delete WorkerGroup",
                "description": "Deletes WorkerGroup by ID or UUID (marks it deleted and archived) and removes its members. Returns the deleted WorkerGroup.",
                "externalDocs": {
                    "description": "Help: Planning (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/multiplan/"
                },
                "operationId": "delete_api_worker_groups_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "WorkerGroup id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted WorkerGroup (serializer groups workergroup, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/WorkerGroup6"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this WorkerGroup"
                    },
                    "404": {
                        "description": "Not found in the caller's company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    }
                ]
            }
        },
        "/api/agrifields/{id}/setcropperiod": {
            "put": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Sets the Agrifield data for a crop period",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "put_api_agrifields_setcropperiod_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Agrifield id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "Existing agrifield-data record to update instead of creating one.",
                                        "type": "integer"
                                    },
                                    "crop_period": {
                                        "description": "Crop period to attach the field data to, as an object with an id field.",
                                        "type": "object"
                                    },
                                    "start_date": {
                                        "description": "Start date of the crop period for this field, Y-m-d. The crop period's default start when empty.",
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "field_size": {
                                        "description": "Field size in hectares. A new record without it takes the field size of the workobject.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "cultivated_size": {
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "water_protection_area_size": {
                                        "description": "Water protection area in hectares. A non-zero value also flags the field as water-protected.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "crop_variety": {
                                        "type": "string"
                                    },
                                    "crop": {
                                        "type": "object"
                                    },
                                    "pria_payee": {
                                        "type": "object"
                                    },
                                    "agrifield_usage_type": {
                                        "type": "object"
                                    },
                                    "crop_purpose_type": {
                                        "type": "object"
                                    },
                                    "agreement_type": {
                                        "type": "object"
                                    },
                                    "crop_layer_type": {
                                        "type": "object"
                                    },
                                    "harvest_type": {
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The AgrifieldData (serializer groups default, agrifields, agrifield_all, fieldbook, owner, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldData4"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "The caller may not modify this field"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/agrifield/pria/massive/{massiveid}": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Returns Pria Massive",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "get_api_agrifield_pria_massive_get",
                "parameters": [
                    {
                        "name": "massiveid",
                        "in": "path",
                        "description": "Agrifield massive number",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The massive, or { error }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/agrifield-multiworks": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Work of several Agrifields around a date",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "get_api_agrifields_multiworks_get",
                "parameters": [
                    {
                        "name": "ids",
                        "in": "query",
                        "description": "Comma-separated agrifield ids. An empty value is a 500, an unknown id a 404.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "date",
                        "in": "query",
                        "description": "Single date, Y-m-d. Defaults to today.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "worktype_id",
                        "in": "query",
                        "description": "Worktype id; must be visible to the company, but does not filter the work.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Per field { agrifield, workdones, datetimeFrom, datetimeTo } (workdones in serializer groups default, agrifield_all, fieldbook, workdone, workobject, geo, classificator)"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Creates work for several Agrifields at once",
                "description": "Returns [].",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "post_api_agrifields_multiworks_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "agrifields": {
                                        "description": "Fields to create work for. Objects with an id field and an optional hectares_served.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "editable": {
                                        "description": "The work template applied to every field: start_time, worker and worktype (objects with an id field).",
                                        "type": "object"
                                    },
                                    "material_usages": {
                                        "description": "Material usage to record against each created work.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "[]"
                    },
                    "404": {
                        "description": "The worker is not one of the company"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/cropstats": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Get crop statistics",
                "description": "Returns { crop, period, data }: summed field size per crop and crop period.",
                "externalDocs": {
                    "description": "Help: Crop rotation (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/croprotation/"
                },
                "operationId": "get_api_cropstats",
                "parameters": [
                    {
                        "name": "payees",
                        "in": "query",
                        "description": "Comma-separated PRIA payee ids. -1 means every payee.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "periods",
                        "in": "query",
                        "description": "Comma-separated crop period years.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ crop, period, data }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/croprotation",
                        "title": "Crop rotation",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/croprotation/",
                            "en": "https://help.terake.com/en/fieldbook/croprotation/"
                        }
                    },
                    {
                        "route": "/fieldbook/crops",
                        "title": "Crops",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/crops/",
                            "en": "https://help.terake.com/en/fieldbook/crops/"
                        }
                    }
                ]
            }
        },
        "/api/croprotation": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Crop rotation",
                "description": "Crop rotation rows per Agrifield, with a cropyear<period> entry per crop period.",
                "externalDocs": {
                    "description": "Help: Crop rotation (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/croprotation/"
                },
                "operationId": "get_api_croprotation",
                "parameters": [
                    {
                        "name": "display_field_size",
                        "in": "query",
                        "description": "Truthy adds the field size column.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "display_payee_name",
                        "in": "query",
                        "description": "Truthy adds the PRIA payee name column.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "display_yield",
                        "in": "query",
                        "description": "Truthy adds the yield column.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "payees",
                        "in": "query",
                        "description": "Comma-separated PRIA payee ids. -1 means every payee.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "periods",
                        "in": "query",
                        "description": "Comma-separated crop period years.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Crop rotation rows"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/croprotation",
                        "title": "Crop rotation",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/croprotation/",
                            "en": "https://help.terake.com/en/fieldbook/croprotation/"
                        }
                    }
                ]
            }
        },
        "/api/croprotation/set/{agrifield_id}/{crop_period_id}": {
            "put": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Writes the crop rotation entry of an Agrifield for one or more crop periods",
                "description": "With crop_period_id 0 in the path the periods come from the body (crop_period, else\nselected_crop_periods) and each starts on its default date. A missing crop year row is\ncreated only when a crop is given; it takes the payee, the field size and a copy of the\ngeometry of the previous crop year row.",
                "externalDocs": {
                    "description": "Help: Crop rotation (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/croprotation/"
                },
                "operationId": "put_api_croprotation_set_put",
                "parameters": [
                    {
                        "name": "agrifield_id",
                        "in": "path",
                        "description": "Agrifield id (0: the agrifield_ids of the body)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026); 0 takes the periods of the body",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "agrifield_ids": {
                                        "description": "Fields the rotation is written to when the path names none.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "crop_period": {
                                        "description": "Crop period to write, as an object with an id field. Takes precedence over selected_crop_periods.",
                                        "type": "object"
                                    },
                                    "selected_crop_periods": {
                                        "description": "Crop period ids to write the same rotation to. Used when crop_period is absent.",
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    },
                                    "crop": {
                                        "description": "Crop to set, as an object with an id field.",
                                        "type": "object"
                                    },
                                    "crop_name_new": {
                                        "description": "Name of a crop to create and use instead of crop.",
                                        "type": "string"
                                    },
                                    "crop_variety": {
                                        "description": "Crop variety.",
                                        "type": "string"
                                    },
                                    "crop_purpose_type": {
                                        "description": "Crop purpose type, as an object with an id field.",
                                        "type": "object"
                                    },
                                    "agrifield_usage_type": {
                                        "description": "Field usage type, as an object with an id field.",
                                        "type": "object"
                                    },
                                    "pria_payee": {
                                        "description": "PRIA payee, as an object with an id field.",
                                        "type": "object"
                                    },
                                    "field_usage_description": {
                                        "description": "Free-text description of how the field is used.",
                                        "type": "string"
                                    },
                                    "start_date": {
                                        "description": "Date the rotation entry starts from, Y-m-d.",
                                        "type": "string",
                                        "format": "date"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Crop rotation rows"
                    },
                    "404": {
                        "description": "An agrifield, crop period, crop or payee named is not visible to the caller"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    },
                    {
                        "route": "/fieldbook/croprotation",
                        "title": "Crop rotation",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/croprotation/",
                            "en": "https://help.terake.com/en/fieldbook/croprotation/"
                        }
                    }
                ]
            }
        },
        "/api/croprotation/{agrifield_data_id}": {
            "delete": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Deletes the crop rotation entry of an Agrifield data record",
                "description": "Removes the crop year row with its fertilizing plan and its own geometry, and returns the remaining crop rotation row of the field; { ok: false } for a row of another company. An unknown id is a 500.",
                "externalDocs": {
                    "description": "Help: Crop rotation (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/croprotation/"
                },
                "operationId": "delete_api_croprotation_delete",
                "parameters": [
                    {
                        "name": "agrifield_data_id",
                        "in": "path",
                        "description": "AgrifieldData id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The crop rotation row (serializer groups default, agrifield_all, fieldbook, classificator), or { ok: false }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/croprotation",
                        "title": "Crop rotation",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/croprotation/",
                            "en": "https://help.terake.com/en/fieldbook/croprotation/"
                        }
                    }
                ]
            }
        },
        "/api/fieldbook/{agrifield_id}": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Get Fieldbook data",
                "description": "Returns { agrifield, agrifield_data, works, material_usage } for the fieldbook of one field.",
                "externalDocs": {
                    "description": "Help: Fieldbook (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldbook/"
                },
                "operationId": "get_api_fieldbook_get",
                "parameters": [
                    {
                        "name": "agrifield_id",
                        "in": "path",
                        "description": "Agrifield id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ agrifield, agrifield_data, works, material_usage }"
                    },
                    "404": {
                        "description": "Not found among the workobjects of the company and its partners"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    }
                ]
            }
        },
        "/api/fieldbook/removeworkdone/{id}": {
            "delete": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Excludes a Workdone from the fieldbook and drops its fertilizing cache",
                "description": "The Workdone is found by id in any company; it must have been done by a worker of the caller's company.",
                "externalDocs": {
                    "description": "Help: Fieldbook (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldbook/"
                },
                "operationId": "delete_api_fieldbook_removeworkdone_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workdone id, not an Agrifield id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "{ result: 1 }"
                    },
                    "404": {
                        "description": "Unable to find entity"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    }
                ]
            }
        },
        "/api/fieldbook/overlapping-check/{agrifield_id}/{crop_period_id}": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Reports fieldbook entries whose geometry overlaps for one Agrifield and crop period",
                "description": "The Agrifield data records of the company's other fields whose polygon intersects this field's in the crop period.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                },
                "operationId": "get_api_overlapping_check",
                "parameters": [
                    {
                        "name": "agrifield_id",
                        "in": "path",
                        "description": "Agrifield id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "description": "CropPeriod id, usually the year (e.g. 2026)",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "AgrifieldData records (serializer groups agrifield_data, geo, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AgrifieldData5"
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/agrifields": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Agrifield collection",
                "description": "The fields of the crop year visible to the caller, with their crop data. The crop period is the\npath's or the query's crop_period_id, the current year when neither is given.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "get_api_agrifields_get_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "query",
                        "description": "Crop period, usually the year (e.g. 2026)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "fieldbook",
                        "in": "query",
                        "description": "Truthy leaves out the fields hidden for the fieldbook.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "Truthy returns archived agrifields instead of active ones.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "skip_geometry",
                        "in": "query",
                        "description": "Truthy leaves out field geometry: lat, lng, simplified, simplified_geom_srid and polygon are returned as null. The response is considerably smaller and faster.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Field rows"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Creates or modifies a Workobject",
                "description": "Creates a new Workobject, or modifies the one named by the id in the body. A new record with no\nworkobject_category defaults to category 10. The modification log records POST /api/workobjects as an update.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "post_api_agrifields_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workobject id or uuid. Only when modifying an existing record.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "lat": {
                                        "description": "Latitude of the workobject centroid.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "lng": {
                                        "description": "Longitude of the workobject centroid.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "cadastres": {
                                        "description": "Cadastres to relate to a newly created workobject. Objects with an id field. Read only when the workobject is created.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "geo_item": {
                                        "description": "Geometry of a workobject that is not a field, as an object with a geojson field holding a geometry. Sending no geo_item removes the existing geometry.",
                                        "type": "object"
                                    },
                                    "crop_period": {
                                        "description": "Crop period to open for the field, as an id such as 2026 or an object with an id field. Read only when at least one of field_size, crop, crop_name or crop_variety is also sent; an unknown or missing value means the current year.",
                                        "type": "object"
                                    },
                                    "field_size": {
                                        "description": "Field size in hectares for the crop period. Decimal comma is accepted.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "crop": {
                                        "description": "Crop grown in the crop period, as { \"id\": <id> }.",
                                        "type": "object"
                                    },
                                    "crop_name": {
                                        "description": "Crop by name: the company's crops, then the shared list; an unknown name creates a crop. Ignored when crop is sent.",
                                        "type": "string"
                                    },
                                    "crop_variety": {
                                        "description": "Crop variety for the crop period.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Workobject (serializer groups agrifields, agrifield_all, workobject, geo, owner, sharing, baseattribute, classificator, auditcolumns, fieldbook)"
                    },
                    "404": {
                        "description": "The named workobject is not visible to the caller"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/agrifield_data": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Agrifield collection",
                "description": "The fields of the crop year visible to the caller, with their crop data. The crop period is the\npath's or the query's crop_period_id, the current year when neither is given.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "get_api_agrifield_data_get_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "query",
                        "description": "Crop period, usually the year (e.g. 2026)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "fieldbook",
                        "in": "query",
                        "description": "Truthy leaves out the fields hidden for the fieldbook.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "Truthy returns archived agrifields instead of active ones.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "skip_geometry",
                        "in": "query",
                        "description": "Truthy leaves out field geometry: lat, lng, simplified, simplified_geom_srid and polygon are returned as null. The response is considerably smaller and faster.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Field rows"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/fieldsonmap",
                        "title": "Fields on map",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldsonmap/",
                            "en": "https://help.terake.com/en/fieldbook/fieldsonmap/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    }
                ]
            }
        },
        "/api/agrifield_data/{crop_period_id}": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Agrifield collection",
                "description": "The fields of the crop year visible to the caller, with their crop data. The crop period is the\npath's or the query's crop_period_id, the current year when neither is given.",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "get_api_agrifield_data_by_period_get_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "query",
                        "description": "Crop period, usually the year (e.g. 2026)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "fieldbook",
                        "in": "query",
                        "description": "Truthy leaves out the fields hidden for the fieldbook.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "Truthy returns archived agrifields instead of active ones.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "skip_geometry",
                        "in": "query",
                        "description": "Truthy leaves out field geometry: lat, lng, simplified, simplified_geom_srid and polygon are returned as null. The response is considerably smaller and faster.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Field rows"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/fieldsonmap",
                        "title": "Fields on map",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldsonmap/",
                            "en": "https://help.terake.com/en/fieldbook/fieldsonmap/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/agrifield_data/{crop_period_id}/{random}": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Agrifield collection",
                "description": "The fields of the crop year visible to the caller, with their crop data. The crop period is the\npath's or the query's crop_period_id, the current year when neither is given.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "get_api_agrifield_data_by_period_get_refresh_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "query",
                        "description": "Crop period, usually the year (e.g. 2026)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "fieldbook",
                        "in": "query",
                        "description": "Truthy leaves out the fields hidden for the fieldbook.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "Truthy returns archived agrifields instead of active ones.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "skip_geometry",
                        "in": "query",
                        "description": "Truthy leaves out field geometry: lat, lng, simplified, simplified_geom_srid and polygon are returned as null. The response is considerably smaller and faster.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "random",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Field rows"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/fieldsonmap",
                        "title": "Fields on map",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldsonmap/",
                            "en": "https://help.terake.com/en/fieldbook/fieldsonmap/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    }
                ]
            }
        },
        "/api/location/fields/{crop_period_id}": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Agrifield collection",
                "description": "The fields of the crop year visible to the caller, with their crop data. The crop period is the\npath's or the query's crop_period_id, the current year when neither is given.",
                "operationId": "get_api_location_fieldsfieldgeometry",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "query",
                        "description": "Crop period, usually the year (e.g. 2026)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "fieldbook",
                        "in": "query",
                        "description": "Truthy leaves out the fields hidden for the fieldbook.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "Truthy returns archived agrifields instead of active ones.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "skip_geometry",
                        "in": "query",
                        "description": "Truthy leaves out field geometry: lat, lng, simplified, simplified_geom_srid and polygon are returned as null. The response is considerably smaller and faster.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Field rows"
                    }
                }
            }
        },
        "/api/fieldbook": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Fieldbook Agrifield collection",
                "description": "The fieldbook rows of the crop year with the applied and planned N, P, K per hectare and the five-year average of P. Without a crop period each field shows its current one.",
                "externalDocs": {
                    "description": "Help: Fieldbook (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldbook/"
                },
                "operationId": "get_api_fieldbook_get_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "query",
                        "description": "Crop period, usually the year (e.g. 2026)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "skip_geometry",
                        "in": "query",
                        "description": "Truthy leaves out field geometry: lat, lng, simplified, simplified_geom_srid and polygon are returned as null.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Field rows"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/fieldbookfields/{crop_period_id}": {
            "get": {
                "tags": [
                    "Agrifields"
                ],
                "summary": "Fieldbook Agrifield collection",
                "description": "The fieldbook rows of the crop year with the applied and planned N, P, K per hectare and the five-year average of P. Without a crop period each field shows its current one.",
                "externalDocs": {
                    "description": "Help: Fieldbook (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldbook/"
                },
                "operationId": "get_api_fieldbookfields_get_collection",
                "parameters": [
                    {
                        "name": "crop_period_id",
                        "in": "query",
                        "description": "Crop period, usually the year (e.g. 2026)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "skip_geometry",
                        "in": "query",
                        "description": "Truthy leaves out field geometry: lat, lng, simplified, simplified_geom_srid and polygon are returned as null.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Field rows"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldbook",
                        "title": "Fieldbook",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldbook/",
                            "en": "https://help.terake.com/en/fieldbook/fieldbook/"
                        }
                    }
                ]
            }
        },
        "/api/workobjects": {
            "get": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "All Workobjects list",
                "description": "Every workobject of the company and those partners share with it, ordered by sorting name.\nArchived ones with is_archived; with from_updated_at every one touched since, deleted and archived included.",
                "externalDocs": {
                    "description": "Help: Workobjects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/workobjects/"
                },
                "operationId": "get_api_workobjects_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "Archived records (and records deleted within 30 days) instead of active ones",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Department (division); own workobjects of other departments are left out.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Agrifields (serializer groups owner, agrifield_all, baseattribute, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Agrifield57"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Creates or modifies a Workobject",
                "description": "Creates a new Workobject, or modifies the one named by the id in the body. A new record with no\nworkobject_category defaults to category 10. The modification log records POST /api/workobjects as an update.",
                "externalDocs": {
                    "description": "Help: Workobjects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/workobjects/"
                },
                "operationId": "post_api_workobjects_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workobject id or uuid. Only when modifying an existing record.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "lat": {
                                        "description": "Latitude of the workobject centroid.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "lng": {
                                        "description": "Longitude of the workobject centroid.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "cadastres": {
                                        "description": "Cadastres to relate to a newly created workobject. Objects with an id field. Read only when the workobject is created.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "geo_item": {
                                        "description": "Geometry of a workobject that is not a field, as an object with a geojson field holding a geometry. Sending no geo_item removes the existing geometry.",
                                        "type": "object"
                                    },
                                    "crop_period": {
                                        "description": "Crop period to open for the field, as an id such as 2026 or an object with an id field. Read only when at least one of field_size, crop, crop_name or crop_variety is also sent; an unknown or missing value means the current year.",
                                        "type": "object"
                                    },
                                    "field_size": {
                                        "description": "Field size in hectares for the crop period. Decimal comma is accepted.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "crop": {
                                        "description": "Crop grown in the crop period, as { \"id\": <id> }.",
                                        "type": "object"
                                    },
                                    "crop_name": {
                                        "description": "Crop by name: the company's crops, then the shared list; an unknown name creates a crop. Ignored when crop is sent.",
                                        "type": "string"
                                    },
                                    "crop_variety": {
                                        "description": "Crop variety for the crop period.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Workobject (serializer groups agrifields, agrifield_all, workobject, geo, owner, sharing, baseattribute, classificator, auditcolumns, fieldbook)"
                    },
                    "404": {
                        "description": "The named workobject is not visible to the caller"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/workobjectsonly": {
            "get": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Workobjects without their related agrifield data",
                "description": "The workobjects that are not fields (workobject_category > 1) of the company and those partners share with it, ordered by sorting name.",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "get_api_workobjectsonly_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "Archived records (and records deleted within 30 days) instead of active ones",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "Department (division); own workobjects of other departments are left out.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Agrifields (serializer groups workobject_list, owner, baseattribute, classificator)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Agrifield58"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Creates or modifies a Workobject",
                "description": "Creates a new Workobject, or modifies the one named by the id in the body. A new record with no\nworkobject_category defaults to category 10. The modification log records POST /api/workobjects as an update.",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "post_api_workobjectsonly_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workobject id or uuid. Only when modifying an existing record.",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "lat": {
                                        "description": "Latitude of the workobject centroid.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "lng": {
                                        "description": "Longitude of the workobject centroid.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "cadastres": {
                                        "description": "Cadastres to relate to a newly created workobject. Objects with an id field. Read only when the workobject is created.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "geo_item": {
                                        "description": "Geometry of a workobject that is not a field, as an object with a geojson field holding a geometry. Sending no geo_item removes the existing geometry.",
                                        "type": "object"
                                    },
                                    "crop_period": {
                                        "description": "Crop period to open for the field, as an id such as 2026 or an object with an id field. Read only when at least one of field_size, crop, crop_name or crop_variety is also sent; an unknown or missing value means the current year.",
                                        "type": "object"
                                    },
                                    "field_size": {
                                        "description": "Field size in hectares for the crop period. Decimal comma is accepted.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "crop": {
                                        "description": "Crop grown in the crop period, as { \"id\": <id> }.",
                                        "type": "object"
                                    },
                                    "crop_name": {
                                        "description": "Crop by name: the company's crops, then the shared list; an unknown name creates a crop. Ignored when crop is sent.",
                                        "type": "string"
                                    },
                                    "crop_variety": {
                                        "description": "Crop variety for the crop period.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Workobject (serializer groups agrifields, agrifield_all, workobject, geo, owner, sharing, baseattribute, classificator, auditcolumns, fieldbook)"
                    },
                    "404": {
                        "description": "The named workobject is not visible to the caller"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/workobjects/{id}": {
            "get": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Get Workobject",
                "description": "Workobject by id or uuid, or by an integration partner's outer id.",
                "externalDocs": {
                    "description": "Help: Workobjects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/workobjects/"
                },
                "operationId": "get_api_workobjects_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workobject id, uuid or integration outer id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Workobject uuid, used instead of the id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Workobject (serializer groups agrifields, agrifield_all, workobject, geo, owner, sharing, baseattribute, classificator, auditcolumns, fieldbook)"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Modifies a Workobject",
                "description": "Modifies the Workobject named in the URL (id or uuid).",
                "externalDocs": {
                    "description": "Help: Workobjects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/workobjects/"
                },
                "operationId": "put_api_workobjects_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workobject id or uuid. Only when modifying an existing record.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "lat": {
                                        "description": "Latitude of the workobject centroid.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "lng": {
                                        "description": "Longitude of the workobject centroid.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "cadastres": {
                                        "description": "Cadastres to relate to a newly created workobject. Objects with an id field. Read only when the workobject is created.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "geo_item": {
                                        "description": "Geometry of a workobject that is not a field, as an object with a geojson field holding a geometry. Sending no geo_item removes the existing geometry.",
                                        "type": "object"
                                    },
                                    "crop_period": {
                                        "description": "Crop period to open for the field, as an id such as 2026 or an object with an id field. Read only when at least one of field_size, crop, crop_name or crop_variety is also sent; an unknown or missing value means the current year.",
                                        "type": "object"
                                    },
                                    "field_size": {
                                        "description": "Field size in hectares for the crop period. Decimal comma is accepted.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "crop": {
                                        "description": "Crop grown in the crop period, as { \"id\": <id> }.",
                                        "type": "object"
                                    },
                                    "crop_name": {
                                        "description": "Crop by name: the company's crops, then the shared list; an unknown name creates a crop. Ignored when crop is sent.",
                                        "type": "string"
                                    },
                                    "crop_variety": {
                                        "description": "Crop variety for the crop period.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Workobject (serializer groups agrifields, agrifield_all, workobject, geo, owner, sharing, baseattribute, classificator, auditcolumns, fieldbook)"
                    },
                    "404": {
                        "description": "The named workobject is not visible to the caller"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Delete Workobject",
                "description": "Marks the Workobject deleted and archived. On /api/agrifield_data/{crop_period_id}/{id} the id is the workobject id.",
                "externalDocs": {
                    "description": "Help: Workobjects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/workobjects/"
                },
                "operationId": "delete_api_workobjects_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workobject id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Workobject uuid, used instead of the id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Workobject (serializer groups agrifield_data, classificator, baseattribute, auditcolumns; agrifield_all, classificator on /api/agrifields/{id})"
                    },
                    "403": {
                        "description": "The caller may not modify this workobject"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/workobjectsonly/{id}": {
            "get": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Get Workobject",
                "description": "Workobject by id or uuid, or by an integration partner's outer id.",
                "externalDocs": {
                    "description": "Help: Workobjects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/workobjects/"
                },
                "operationId": "get_api_workobjectsonly_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workobject id, uuid or integration outer id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Workobject uuid, used instead of the id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Workobject (serializer groups agrifields, agrifield_all, workobject, geo, owner, sharing, baseattribute, classificator, auditcolumns, fieldbook)"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/admin/workdones",
                        "title": "Completed works",
                        "help": {
                            "et": "https://help.terake.com/et/admin/workdones/",
                            "en": "https://help.terake.com/en/admin/workdones/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Modifies a Workobject",
                "description": "Modifies the Workobject named in the URL (id or uuid).",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "put_api_workobjectsonly_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workobject id or uuid. Only when modifying an existing record.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "lat": {
                                        "description": "Latitude of the workobject centroid.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "lng": {
                                        "description": "Longitude of the workobject centroid.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "cadastres": {
                                        "description": "Cadastres to relate to a newly created workobject. Objects with an id field. Read only when the workobject is created.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "geo_item": {
                                        "description": "Geometry of a workobject that is not a field, as an object with a geojson field holding a geometry. Sending no geo_item removes the existing geometry.",
                                        "type": "object"
                                    },
                                    "crop_period": {
                                        "description": "Crop period to open for the field, as an id such as 2026 or an object with an id field. Read only when at least one of field_size, crop, crop_name or crop_variety is also sent; an unknown or missing value means the current year.",
                                        "type": "object"
                                    },
                                    "field_size": {
                                        "description": "Field size in hectares for the crop period. Decimal comma is accepted.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "crop": {
                                        "description": "Crop grown in the crop period, as { \"id\": <id> }.",
                                        "type": "object"
                                    },
                                    "crop_name": {
                                        "description": "Crop by name: the company's crops, then the shared list; an unknown name creates a crop. Ignored when crop is sent.",
                                        "type": "string"
                                    },
                                    "crop_variety": {
                                        "description": "Crop variety for the crop period.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Workobject (serializer groups agrifields, agrifield_all, workobject, geo, owner, sharing, baseattribute, classificator, auditcolumns, fieldbook)"
                    },
                    "404": {
                        "description": "The named workobject is not visible to the caller"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Delete Workobject",
                "description": "Marks the Workobject deleted and archived. On /api/agrifield_data/{crop_period_id}/{id} the id is the workobject id.",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "delete_api_workobjectsonly_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workobject id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Workobject uuid, used instead of the id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Workobject (serializer groups agrifield_data, classificator, baseattribute, auditcolumns; agrifield_all, classificator on /api/agrifields/{id})"
                    },
                    "403": {
                        "description": "The caller may not modify this workobject"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/agrifields/{id}": {
            "get": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Get Workobject",
                "description": "Workobject by id or uuid, or by an integration partner's outer id.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "get_api_agrifields_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workobject id, uuid or integration outer id",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Workobject uuid, used instead of the id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Workobject (serializer groups agrifields, agrifield_all, workobject, geo, owner, sharing, baseattribute, classificator, auditcolumns, fieldbook)"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Modifies a Workobject",
                "description": "Modifies the Workobject named in the URL (id or uuid).",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "put_api_agrifields_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workobject id or uuid. Only when modifying an existing record.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "lat": {
                                        "description": "Latitude of the workobject centroid.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "lng": {
                                        "description": "Longitude of the workobject centroid.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "cadastres": {
                                        "description": "Cadastres to relate to a newly created workobject. Objects with an id field. Read only when the workobject is created.",
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "geo_item": {
                                        "description": "Geometry of a workobject that is not a field, as an object with a geojson field holding a geometry. Sending no geo_item removes the existing geometry.",
                                        "type": "object"
                                    },
                                    "crop_period": {
                                        "description": "Crop period to open for the field, as an id such as 2026 or an object with an id field. Read only when at least one of field_size, crop, crop_name or crop_variety is also sent; an unknown or missing value means the current year.",
                                        "type": "object"
                                    },
                                    "field_size": {
                                        "description": "Field size in hectares for the crop period. Decimal comma is accepted.",
                                        "type": "number",
                                        "format": "float"
                                    },
                                    "crop": {
                                        "description": "Crop grown in the crop period, as { \"id\": <id> }.",
                                        "type": "object"
                                    },
                                    "crop_name": {
                                        "description": "Crop by name: the company's crops, then the shared list; an unknown name creates a crop. Ignored when crop is sent.",
                                        "type": "string"
                                    },
                                    "crop_variety": {
                                        "description": "Crop variety for the crop period.",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Workobject (serializer groups agrifields, agrifield_all, workobject, geo, owner, sharing, baseattribute, classificator, auditcolumns, fieldbook)"
                    },
                    "404": {
                        "description": "The named workobject is not visible to the caller"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Delete Workobject",
                "description": "Marks the Workobject deleted and archived. On /api/agrifield_data/{crop_period_id}/{id} the id is the workobject id.",
                "externalDocs": {
                    "description": "Help: Field admin (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/agrifieldadmin/"
                },
                "operationId": "delete_api_agrifields_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workobject id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Workobject uuid, used instead of the id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Workobject (serializer groups agrifield_data, classificator, baseattribute, auditcolumns; agrifield_all, classificator on /api/agrifields/{id})"
                    },
                    "403": {
                        "description": "The caller may not modify this workobject"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldimport",
                        "title": "Field import",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldimport/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldimport/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/agrifield_data/{crop_period_id}/{id}": {
            "delete": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Delete Workobject",
                "description": "Marks the Workobject deleted and archived. On /api/agrifield_data/{crop_period_id}/{id} the id is the workobject id.",
                "externalDocs": {
                    "description": "Help: Tasks (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/plans/month/"
                },
                "operationId": "delete_api_agrifield_data_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Workobject id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "query",
                        "description": "Workobject uuid, used instead of the id",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "crop_period_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Workobject (serializer groups agrifield_data, classificator, baseattribute, auditcolumns; agrifield_all, classificator on /api/agrifields/{id})"
                    },
                    "403": {
                        "description": "The caller may not modify this workobject"
                    },
                    "404": {
                        "description": "Not found"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/fieldbook/fieldsonmap",
                        "title": "Fields on map",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldsonmap/",
                            "en": "https://help.terake.com/en/fieldbook/fieldsonmap/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    }
                ]
            }
        },
        "/api/workobjects/cadastres/{workobject_id}/{cadastre_id}": {
            "post": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Add Cadastre to Workobject",
                "description": "Relates the company's cadastre to the company's workobject (both not deleted); returns the workobject's cadastres. An unknown workobject is a 500.",
                "externalDocs": {
                    "description": "Help: Workobjects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/workobjects/"
                },
                "operationId": "post_api_workobjects_cadastres_post",
                "parameters": [
                    {
                        "name": "workobject_id",
                        "in": "path",
                        "description": "Workobject (Agrifield) id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cadastre_id",
                        "in": "path",
                        "description": "Cadastre id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Cadastres (serializer groups cadastre, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Cadastre5"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Workobjects"
                ],
                "summary": "Removes a Workobject from a Cadastre",
                "description": "Removes the relation of the company's workobject and cadastre (both not deleted); returns the cadastres still attached. An unknown workobject is a 500.",
                "externalDocs": {
                    "description": "Help: Workobjects (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/storage/workobjects/"
                },
                "operationId": "delete_api_workobjects_cadastres_delete",
                "parameters": [
                    {
                        "name": "workobject_id",
                        "in": "path",
                        "description": "Workobject (Agrifield) id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cadastre_id",
                        "in": "path",
                        "description": "Cadastre id",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Cadastres (serializer groups cadastre, baseattribute)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Cadastre5"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjects/",
                            "en": "https://help.terake.com/en/admin/main/workobjects/"
                        }
                    },
                    {
                        "route": "/fieldbook/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/agrifieldadmin/",
                            "en": "https://help.terake.com/en/fieldbook/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/storage/agrifieldadmin",
                        "title": "Field admin",
                        "help": {
                            "et": "https://help.terake.com/et/storage/agrifieldadmin/",
                            "en": "https://help.terake.com/en/storage/agrifieldadmin/"
                        }
                    },
                    {
                        "route": "/storage/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/storage/workobjects/",
                            "en": "https://help.terake.com/en/storage/workobjects/"
                        }
                    },
                    {
                        "route": "/vehiclebook/workobjects",
                        "title": "Workobjects",
                        "help": {
                            "et": "https://help.terake.com/et/vehiclebook/workobjects/",
                            "en": "https://help.terake.com/en/vehiclebook/workobjects/"
                        }
                    }
                ]
            }
        },
        "/api/workobjectcategories": {
            "get": {
                "tags": [
                    "WorkobjectCategories"
                ],
                "externalDocs": {
                    "description": "Help: Workobject types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/workobjectcategories/"
                },
                "operationId": "get_api_workobjectcategories_list",
                "parameters": [
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "With 1: rows archived by their owner or by the calling company, plus rows deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Unix timestamp: every row changed at or after it, deleted and archived included, for delta sync",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "groups",
                        "in": "query",
                        "description": "Comma-separated subset of the serializer groups this endpoint offers; narrows the response",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workobjectcategories",
                        "title": "Workobject types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjectcategories/",
                            "en": "https://help.terake.com/en/admin/main/workobjectcategories/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "WorkobjectCategories"
                ],
                "externalDocs": {
                    "description": "Help: Workobject types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/workobjectcategories/"
                },
                "operationId": "post_api_workobjectcategories_create",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "properties": {
                                    "id": {
                                        "description": "Names an existing row to update instead of creating one",
                                        "type": "integer"
                                    },
                                    "uuid": {
                                        "description": "Same, by uuid (clients that create records offline)",
                                        "type": "string"
                                    },
                                    "import_type": {
                                        "description": "With \"file\" (the file import screen) the row to update is matched by outer_id first, then id, then uuid, within the calling company",
                                        "type": "string",
                                        "enum": [
                                            "file"
                                        ]
                                    },
                                    "outer_id": {
                                        "description": "The external identifier a file import matches on; only read with import_type=file",
                                        "type": "string"
                                    },
                                    "name": {
                                        "description": "Category name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "inspection_master_template": {
                                        "description": "{id} of the inspection template work objects of this category use; null clears it",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": [
                                            "object",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workobjectcategories",
                        "title": "Workobject types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjectcategories/",
                            "en": "https://help.terake.com/en/admin/main/workobjectcategories/"
                        }
                    }
                ]
            }
        },
        "/api/workobjectcategories/{id}": {
            "get": {
                "tags": [
                    "WorkobjectCategories"
                ],
                "externalDocs": {
                    "description": "Help: Workobject types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/workobjectcategories/"
                },
                "operationId": "get_api_workobjectcategories_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/workobjectcategories",
                        "title": "Workobject types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjectcategories/",
                            "en": "https://help.terake.com/en/admin/main/workobjectcategories/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "WorkobjectCategories"
                ],
                "externalDocs": {
                    "description": "Help: Workobject types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/workobjectcategories/"
                },
                "operationId": "put_api_workobjectcategories_update",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Keys absent from the body leave the field unchanged.",
                                "properties": {
                                    "name": {
                                        "description": "Category name",
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    },
                                    "inspection_master_template": {
                                        "description": "{id} of the inspection template work objects of this category use; null clears it",
                                        "properties": {
                                            "id": {
                                                "type": "integer"
                                            }
                                        },
                                        "type": [
                                            "object",
                                            "null"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workobjectcategories",
                        "title": "Workobject types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjectcategories/",
                            "en": "https://help.terake.com/en/admin/main/workobjectcategories/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "WorkobjectCategories"
                ],
                "externalDocs": {
                    "description": "Help: Workobject types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/workobjectcategories/"
                },
                "operationId": "delete_api_workobjectcategories_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workobjectcategories",
                        "title": "Workobject types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjectcategories/",
                            "en": "https://help.terake.com/en/admin/main/workobjectcategories/"
                        }
                    }
                ]
            }
        },
        "/api/workobjectcategories/{id}/togglearchive": {
            "put": {
                "tags": [
                    "WorkobjectCategories"
                ],
                "externalDocs": {
                    "description": "Help: Workobject types (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/workobjectcategories/"
                },
                "operationId": "put_api_workobjectcategories_togglearchive",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "[0-9a-fA-F-]+"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/workobjectcategories",
                        "title": "Workobject types",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/workobjectcategories/",
                            "en": "https://help.terake.com/en/admin/main/workobjectcategories/"
                        }
                    }
                ]
            }
        },
        "/api/worktimereports/realtime": {
            "get": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Work currently in progress, with worker, facility and worktype",
                "externalDocs": {
                    "description": "Help: Fieldwork planning (calendar view) (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/fieldbook/fieldworkview/"
                },
                "operationId": "get_api_worktimereports_realtime_get",
                "parameters": [
                    {
                        "name": "oneself",
                        "in": "query",
                        "description": "Truthy limits the result to the authenticated worker.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "For an administrator or observer: only workers of this department, its direct children, or no department.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The unfinished Workdones (serializer group workdone)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Workdone29"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/fieldbook/fieldworkview",
                        "title": "Fieldwork planning (calendar view)",
                        "help": {
                            "et": "https://help.terake.com/et/fieldbook/fieldworkview/",
                            "en": "https://help.terake.com/en/fieldbook/fieldworkview/"
                        }
                    }
                ]
            }
        },
        "/api/worktimereports/calendaritem": {
            "get": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Calendar items currently in progress",
                "externalDocs": {
                    "description": "Help: Dashboard (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/realtime/dash/"
                },
                "operationId": "get_api_calendaritem_ongoing",
                "parameters": [
                    {
                        "name": "oneself",
                        "in": "query",
                        "description": "Truthy limits the result to the authenticated worker.",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "For an administrator or observer: only workers of this department, its direct children, or no department.",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Rosteritems covering the present minute (serializer group calendaritem)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Rosteritem15"
                                    }
                                }
                            }
                        }
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    }
                ]
            }
        },
        "/api/worktimereports/ttki-ongoing": {
            "get": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Ongoing works started by the TTKI solution",
                "externalDocs": {
                    "description": "Help: Dashboard (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/realtime/dash/"
                },
                "operationId": "get_api_ttki_ongoing",
                "responses": {
                    "200": {
                        "description": "List of { id, source, start_time, stop_time, duration_seconds, workarea_uuid, workarea, agrifield, worker, company }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/realtime/dash",
                        "title": "Dashboard",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/dash/",
                            "en": "https://help.terake.com/en/terake/realtime/dash/"
                        }
                    },
                    {
                        "route": "/terake/realtime/grid",
                        "title": "Grid",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/grid/",
                            "en": "https://help.terake.com/en/terake/realtime/grid/"
                        }
                    },
                    {
                        "route": "/terake/realtime/list",
                        "title": "Realtime info list view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/list/",
                            "en": "https://help.terake.com/en/terake/realtime/list/"
                        }
                    },
                    {
                        "route": "/terake/realtime/map",
                        "title": "Map view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/map/",
                            "en": "https://help.terake.com/en/terake/realtime/map/"
                        }
                    },
                    {
                        "route": "/terake/realtime/telemetry",
                        "title": "Telemetry",
                        "help": {
                            "et": "https://help.terake.com/et/terake/realtime/telemetry/",
                            "en": "https://help.terake.com/en/terake/realtime/telemetry/"
                        }
                    }
                ]
            }
        },
        "/api/is-workfields-app-in-use": {
            "get": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Whether the company has any TTKI work recorded through the Workfields app",
                "externalDocs": {
                    "description": "Help: Detail view (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/detail/"
                },
                "operationId": "get_api_is_workfields_app_in_use",
                "responses": {
                    "200": {
                        "description": "true or false"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    }
                ]
            }
        },
        "/api/worktimereports/ttki-works": {
            "get": {
                "tags": [
                    "Workdones"
                ],
                "summary": "Finished works started by the TTKI solution",
                "externalDocs": {
                    "description": "Help: Detail view (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/terake/detail/"
                },
                "operationId": "get_api_worktimereports_ttki_works",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Start of the period; the first day of this month by default.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Last day of the period (inclusive); the last day of this month by default.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of { id, source, start_time, stop_time, duration_seconds, workarea_uuid, workarea, agrifield, worker, company }"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/terake/approval",
                        "title": "Approval",
                        "help": {
                            "et": "https://help.terake.com/et/terake/approval/",
                            "en": "https://help.terake.com/en/terake/approval/"
                        }
                    },
                    {
                        "route": "/terake/detail",
                        "title": "Detail view",
                        "help": {
                            "et": "https://help.terake.com/et/terake/detail/",
                            "en": "https://help.terake.com/en/terake/detail/"
                        }
                    }
                ]
            }
        },
        "/api/worktypes": {
            "get": {
                "tags": [
                    "Worktypes"
                ],
                "summary": "Worktype collection",
                "description": "The work types the company may see (its own, the generic companies' and its sharing partners'), neither deleted nor archived, by sorting name, at most 10000.",
                "externalDocs": {
                    "description": "Help: Worktypes (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/worktypes/"
                },
                "operationId": "get_api_worktypes_get_collection",
                "parameters": [
                    {
                        "name": "from_updated_at",
                        "in": "query",
                        "description": "Records updated from Unix timestamp (deleted and archived ones included)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "is_archived",
                        "in": "query",
                        "description": "If is_archived=1, the archived work types and those deleted within the last 30 days",
                        "required": false,
                        "schema": {
                            "type": "boolean"
                        }
                    },
                    {
                        "name": "division_id",
                        "in": "query",
                        "description": "The company's own work types of that department and its sub-departments only (and those without a department)",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of Worktype (serializer groups owner, worktype_all, baseattribute, classificator, archive)"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/worktypes",
                        "title": "Worktypes",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/worktypes/",
                            "en": "https://help.terake.com/en/admin/main/worktypes/"
                        }
                    }
                ]
            },
            "post": {
                "tags": [
                    "Worktypes"
                ],
                "summary": "Create Worktype",
                "description": "Creates a Worktype of the company, or modifies the one of the company the body names by \"id\" or \"uuid\". \"name\" is required. A key the body leaves out leaves that field alone.",
                "externalDocs": {
                    "description": "Help: Worktypes (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/worktypes/"
                },
                "operationId": "post_api_worktypes_post",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "hourly_rate": {
                                        "type": "number"
                                    },
                                    "fuel_consumption_per_hour": {
                                        "type": "number"
                                    },
                                    "is_silage_transport": {
                                        "type": "boolean"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    },
                                    "exclude_from_worktime": {
                                        "type": "boolean"
                                    },
                                    "exclude_from_fuel_cons": {
                                        "type": "boolean"
                                    },
                                    "is_background_work": {
                                        "type": "boolean"
                                    },
                                    "is_faultitem_work": {
                                        "type": "boolean"
                                    },
                                    "is_hidden_from_mobile": {
                                        "type": "boolean"
                                    },
                                    "is_parent": {
                                        "type": "boolean"
                                    },
                                    "worktype_type_id": {
                                        "type": "integer"
                                    },
                                    "find_workobject_from_telemetry": {
                                        "type": "boolean"
                                    },
                                    "master_worktype": {
                                        "description": "{\"id\": ...}, a work type of the company",
                                        "type": "object"
                                    },
                                    "parent_worktype": {
                                        "description": "{\"id\": ...}, a work type of the company",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Worktype (serializer groups sharing, worktype_all, worktype, baseattribute, owner, archive)"
                    },
                    "403": {
                        "description": "The body names another company's work type"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/worktypes",
                        "title": "Worktypes",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/worktypes/",
                            "en": "https://help.terake.com/en/admin/main/worktypes/"
                        }
                    }
                ]
            }
        },
        "/api/worktypes/{id}": {
            "get": {
                "tags": [
                    "Worktypes"
                ],
                "summary": "Get Worktype",
                "description": "Worktype by ID or UUID.",
                "externalDocs": {
                    "description": "Help: Worktypes (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/worktypes/"
                },
                "operationId": "get_api_worktypes_get",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worktype id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Worktype (serializer groups sharing, worktype_all, worktype, baseattribute, owner, classificator, archive)"
                    },
                    "404": {
                        "description": "Not found among the work types the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/index",
                        "title": "Admin Settings",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/index/",
                            "en": "https://help.terake.com/en/admin/main/index/"
                        }
                    },
                    {
                        "route": "/admin/main/worktypes",
                        "title": "Worktypes",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/worktypes/",
                            "en": "https://help.terake.com/en/admin/main/worktypes/"
                        }
                    },
                    {
                        "route": "/my",
                        "title": "Me",
                        "help": {
                            "et": "https://help.terake.com/et/my/",
                            "en": "https://help.terake.com/en/my/"
                        }
                    },
                    {
                        "route": "/my/roster",
                        "title": "My calendar",
                        "help": {
                            "et": "https://help.terake.com/et/my/roster/",
                            "en": "https://help.terake.com/en/my/roster/"
                        }
                    },
                    {
                        "route": "/plans/gantt",
                        "title": "Graphical overview",
                        "help": {
                            "et": "https://help.terake.com/et/plans/gantt/",
                            "en": "https://help.terake.com/en/plans/gantt/"
                        }
                    },
                    {
                        "route": "/plans/list",
                        "title": "Tasks report",
                        "help": {
                            "et": "https://help.terake.com/et/plans/list/",
                            "en": "https://help.terake.com/en/plans/list/"
                        }
                    },
                    {
                        "route": "/plans/month",
                        "title": "Tasks",
                        "help": {
                            "et": "https://help.terake.com/et/plans/month/",
                            "en": "https://help.terake.com/en/plans/month/"
                        }
                    },
                    {
                        "route": "/plans/multiplan",
                        "title": "Planning",
                        "help": {
                            "et": "https://help.terake.com/et/plans/multiplan/",
                            "en": "https://help.terake.com/en/plans/multiplan/"
                        }
                    },
                    {
                        "route": "/plans/rostermain",
                        "title": "Work schedule",
                        "help": {
                            "et": "https://help.terake.com/et/plans/rostermain/",
                            "en": "https://help.terake.com/en/plans/rostermain/"
                        }
                    },
                    {
                        "route": "/plans/schedule",
                        "title": "Roster timeline",
                        "help": {
                            "et": "https://help.terake.com/et/plans/schedule/",
                            "en": "https://help.terake.com/en/plans/schedule/"
                        }
                    },
                    {
                        "route": "/plans/vacations",
                        "title": "Vacations",
                        "help": {
                            "et": "https://help.terake.com/et/plans/vacations/",
                            "en": "https://help.terake.com/en/plans/vacations/"
                        }
                    },
                    {
                        "route": "/transport",
                        "title": "Transport module",
                        "help": {
                            "et": "https://help.terake.com/et/transport/",
                            "en": "https://help.terake.com/en/transport/"
                        }
                    }
                ]
            },
            "put": {
                "tags": [
                    "Worktypes"
                ],
                "summary": "Modify Worktype",
                "description": "Modifies a Worktype. The body \"id\" must equal the path id. A key the body leaves out leaves that field alone. A change of exclude_from_fuel_cons clears the fuel consumption of its work since the first day of last month for recalculation (alert_fuel_consumption_change is then true in the answer).",
                "externalDocs": {
                    "description": "Help: Worktypes (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/worktypes/"
                },
                "operationId": "put_api_worktypes_put",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worktype id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "outer_id": {
                                        "type": "string"
                                    },
                                    "hourly_rate": {
                                        "type": "number"
                                    },
                                    "fuel_consumption_per_hour": {
                                        "type": "number"
                                    },
                                    "is_silage_transport": {
                                        "type": "boolean"
                                    },
                                    "is_archived": {
                                        "type": "boolean"
                                    },
                                    "exclude_from_worktime": {
                                        "type": "boolean"
                                    },
                                    "exclude_from_fuel_cons": {
                                        "type": "boolean"
                                    },
                                    "is_background_work": {
                                        "type": "boolean"
                                    },
                                    "is_faultitem_work": {
                                        "type": "boolean"
                                    },
                                    "is_hidden_from_mobile": {
                                        "type": "boolean"
                                    },
                                    "is_parent": {
                                        "type": "boolean"
                                    },
                                    "worktype_type_id": {
                                        "type": "integer"
                                    },
                                    "find_workobject_from_telemetry": {
                                        "type": "boolean"
                                    },
                                    "master_worktype": {
                                        "description": "{\"id\": ...}, a work type of the company",
                                        "type": "object"
                                    },
                                    "parent_worktype": {
                                        "description": "{\"id\": ...}, a work type of the company",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The Worktype (serializer groups sharing, worktype_all, worktype, baseattribute, owner, archive)"
                    },
                    "403": {
                        "description": "The caller may not modify this Worktype"
                    },
                    "404": {
                        "description": "Not found among the work types the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/worktypes",
                        "title": "Worktypes",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/worktypes/",
                            "en": "https://help.terake.com/en/admin/main/worktypes/"
                        }
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Worktypes"
                ],
                "summary": "Delete Worktype",
                "description": "Deletes Worktype by ID or UUID (marks it deleted and archived). Returns the deleted Worktype.",
                "externalDocs": {
                    "description": "Help: Worktypes (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/worktypes/"
                },
                "operationId": "delete_api_worktypes_delete",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worktype id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The deleted Worktype"
                    },
                    "403": {
                        "description": "The caller may not modify this Worktype"
                    },
                    "404": {
                        "description": "Not found among the work types the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/worktypes",
                        "title": "Worktypes",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/worktypes/",
                            "en": "https://help.terake.com/en/admin/main/worktypes/"
                        }
                    }
                ]
            }
        },
        "/api/worktypes/{id}/savehourlyraterate": {
            "post": {
                "tags": [
                    "Worktypes"
                ],
                "summary": "Save Worktype hourly rate",
                "description": "With worker_id (query or body): that worker's rate on the work type (a zero rate removes it), answered as the WorktypeHourlyRate; without: the work type's own rate, answered as the Worktype. Only the company's own work types (403 otherwise).",
                "externalDocs": {
                    "description": "Help: Worktypes (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/worktypes/"
                },
                "operationId": "post_api_savehourlyraterate_post",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worktype id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "worker_id",
                        "in": "query",
                        "description": "A worker of the company",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "hourlyrate": {
                                        "description": "The rate; a decimal comma is accepted",
                                        "type": "number"
                                    },
                                    "worker_id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "The WorktypeHourlyRate or the Worktype"
                    },
                    "403": {
                        "description": "Another company's work type"
                    },
                    "404": {
                        "description": "No such work type or worker"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/worktypes",
                        "title": "Worktypes",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/worktypes/",
                            "en": "https://help.terake.com/en/admin/main/worktypes/"
                        }
                    }
                ]
            }
        },
        "/api/worktypes/{id}/togglearchive": {
            "put": {
                "tags": [
                    "Worktypes"
                ],
                "summary": "Toggle Worktype archive",
                "description": "The owner flips the work type's own archived flag; any other company archives it for itself alone.",
                "externalDocs": {
                    "description": "Help: Worktypes (the web client screen that uses this call)",
                    "url": "https://help.terake.com/en/admin/main/worktypes/"
                },
                "operationId": "put_api_worktypes_put_togglearchive",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Worktype id or uuid",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The Worktype (serializer groups owner, worktype_all, baseattribute, archive)"
                    },
                    "404": {
                        "description": "Not found among the work types the company may see"
                    }
                },
                "x-help-pages": [
                    {
                        "route": "/admin/main/worktypes",
                        "title": "Worktypes",
                        "help": {
                            "et": "https://help.terake.com/et/admin/main/worktypes/",
                            "en": "https://help.terake.com/en/admin/main/worktypes/"
                        }
                    }
                ]
            }
        }
    },
    "components": {
        "schemas": {
            "CreateClientRequest": {
                "properties": {
                    "email": {
                        "description": "Future administrator e-mail; also the login name",
                        "type": "string",
                        "example": "mari@talu.ee",
                        "default": ""
                    },
                    "password": {
                        "description": "Password, at least 8 characters",
                        "type": "string",
                        "default": ""
                    },
                    "company_name": {
                        "description": "Company name",
                        "type": "string",
                        "example": "Mari Talu O\u00dc",
                        "default": ""
                    },
                    "company_regnum": {
                        "description": "Company registration number",
                        "type": [
                            "string",
                            "null"
                        ],
                        "example": "12345678",
                        "default": null
                    },
                    "fullname": {
                        "description": "Full name of the person; the part before @ of the e-mail when omitted",
                        "type": [
                            "string",
                            "null"
                        ],
                        "example": "Mari Maasikas",
                        "default": null
                    },
                    "country": {
                        "description": "Two-letter country code, \"XX\" for other; default EE",
                        "type": [
                            "string",
                            "null"
                        ],
                        "example": "EE",
                        "default": null
                    },
                    "locale": {
                        "description": "Language of the company and its starter records: et, en or ru; default et",
                        "type": [
                            "string",
                            "null"
                        ],
                        "example": "et",
                        "default": null
                    }
                },
                "type": "object"
            },
            "SendPasswordLinkRequest": {
                "properties": {
                    "email": {
                        "description": "E-mail address or username of the account",
                        "type": "string",
                        "example": "mari@talu.ee",
                        "default": ""
                    },
                    "lng": {
                        "description": "Language of the e-mail: et or en; default en",
                        "type": [
                            "string",
                            "null"
                        ],
                        "example": "et",
                        "default": null
                    }
                },
                "type": "object"
            },
            "DeviceListQuery": {
                "properties": {
                    "named": {
                        "description": "true: only devices that have a name (name set and not empty); false or omitted: all devices of the company",
                        "type": "boolean",
                        "example": true,
                        "default": false
                    }
                },
                "type": "object"
            },
            "FactoryTapRequest": {
                "properties": {
                    "device_uuid": {
                        "description": "The tablet, as the uuid of its device record",
                        "type": [
                            "string",
                            "null"
                        ],
                        "example": "3f2a9c1e-7b4d-4c8e-9f1a-2b3c4d5e6f70",
                        "default": null
                    },
                    "code": {
                        "description": "The 8 hex digit code the tablet showed; it accepts its current code and the one before it",
                        "type": [
                            "string",
                            "null"
                        ],
                        "example": "a3f91c0e",
                        "default": null
                    },
                    "ts": {
                        "description": "Unix time the tablet generated the code at, as it came; passed on as a string",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "example": 1791806400,
                        "default": null
                    }
                },
                "type": "object"
            },
            "AgreementType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AgreementType translation slug.",
                        "type": "string"
                    },
                    "pria_code": {
                        "title": "Pria \"poldKasutusOigus\" code.",
                        "description": "KR\t\tkirjalik rendileping\nO\t\tomandis\nSR\t\tsuuline rendileping\nKV\t\tkasutusvaldus\nM\t\tmuu",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Company": {
                "properties": {
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "name": {
                        "title": "Company name",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "registry_code": {
                        "title": "Company code or person's national id, up to 64 characters",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "WorkobjectCategory": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agreement": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Computed field",
                        "type": "string"
                    },
                    "agreement_number": {
                        "title": "Agreement number",
                        "type": "string"
                    },
                    "agreement_type": {
                        "$ref": "#/components/schemas/AgreementType"
                    },
                    "signing_time": {
                        "title": "agreement signing Time",
                        "type": "string",
                        "format": "date-time"
                    },
                    "from_time": {
                        "title": "Effect start date",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Effect end date",
                        "type": "string",
                        "format": "date-time"
                    },
                    "customer": {
                        "title": "Partner/Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer"
                            }
                        ]
                    },
                    "customer_person": {
                        "title": "Partner/Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson"
                            }
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "workobjects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield"
                        }
                    },
                    "agreement_objects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgreementObject"
                        }
                    },
                    "agreement_payment_detail": {
                        "$ref": "#/components/schemas/AgreementPaymentDetail"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory"
                    },
                    "agreement": {
                        "$ref": "#/components/schemas/Agreement"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AgreementObject": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "agreement": {
                        "$ref": "#/components/schemas/Agreement"
                    },
                    "workobject": {
                        "$ref": "#/components/schemas/Agrifield"
                    },
                    "cadastre": {
                        "$ref": "#/components/schemas/Cadastre"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AgreementPaymentDetail": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "account_number": {
                        "title": "Bank Account Number",
                        "type": "string"
                    },
                    "total_amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "paid_amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "next_payment_amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "next_payment_date": {
                        "title": "Next payment date",
                        "type": "string",
                        "format": "date-time"
                    },
                    "description": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Cadastre": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "cadastre_number": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker": {
                "properties": {
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    }
                },
                "type": "object"
            },
            "MessageType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "area": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "requires_response": {
                        "type": "boolean",
                        "default": 0
                    },
                    "template_name_txt": {
                        "type": "string"
                    },
                    "template_name_html": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Message": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "from_worker": {
                        "$ref": "#/components/schemas/Worker"
                    },
                    "message_type": {
                        "$ref": "#/components/schemas/MessageType"
                    },
                    "body_text": {
                        "type": "string"
                    },
                    "body_text_html": {
                        "type": "string"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "default": 0
                    },
                    "responded_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "deleted_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "status_code": {
                        "type": "string"
                    },
                    "urgency": {
                        "title": "Currently three levels: 0 - none, 100 - informative, 200 - urgent",
                        "type": "integer",
                        "default": 0
                    },
                    "objects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MessageObject"
                        }
                    },
                    "subject": {
                        "type": "string"
                    },
                    "send_email": {
                        "type": "boolean",
                        "default": false
                    },
                    "valid_until": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "TerakeObjectType": {
                "type": "object"
            },
            "MessageObject": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "message": {
                        "$ref": "#/components/schemas/Message"
                    },
                    "object_type": {
                        "type": "string"
                    },
                    "object_code": {
                        "$ref": "#/components/schemas/TerakeObjectType"
                    },
                    "object_id": {
                        "type": "integer"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "deleted_at": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Notification": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "to_worker": {
                        "title": "Worker to be notified about message",
                        "description": "Must be serialized with MaxDepth(2) because Terake Workfields (Android native app) goes mad\nwhen Worker object doesnt have assigned inflated Company property",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker"
                            }
                        ]
                    },
                    "message": {
                        "title": "Message to be sent",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Message"
                            }
                        ]
                    },
                    "opened_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "deleted_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "status_code": {
                        "type": "string"
                    },
                    "is_silent": {
                        "type": "boolean",
                        "default": false
                    },
                    "emailed_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Customer2": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "registry_code": {
                        "title": "Company code or person's national id, up to 64 characters",
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson2"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield2"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department2"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker2": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department2"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department2": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "WorkerGroup": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Profession": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department2"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "CustomerPerson2": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer2"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agreement2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Computed field",
                        "type": "string"
                    },
                    "agreement_number": {
                        "title": "Agreement number",
                        "type": "string"
                    },
                    "agreement_type": {
                        "$ref": "#/components/schemas/AgreementType"
                    },
                    "signing_time": {
                        "title": "agreement signing Time",
                        "type": "string",
                        "format": "date-time"
                    },
                    "from_time": {
                        "title": "Effect start date",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Effect end date",
                        "type": "string",
                        "format": "date-time"
                    },
                    "customer": {
                        "title": "Partner/Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer2"
                            }
                        ]
                    },
                    "customer_person": {
                        "title": "Partner/Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson2"
                            }
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "workobjects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield2"
                        }
                    },
                    "agreement_objects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgreementObject2"
                        }
                    },
                    "agreement_payment_detail": {
                        "$ref": "#/components/schemas/AgreementPaymentDetail"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield2": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer2"
                    },
                    "agreement": {
                        "$ref": "#/components/schemas/Agreement2"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department2"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Cadastre2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "cadastre_number": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AgreementObject2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "agreement": {
                        "$ref": "#/components/schemas/Agreement2"
                    },
                    "workobject": {
                        "$ref": "#/components/schemas/Agrifield2"
                    },
                    "cadastre": {
                        "$ref": "#/components/schemas/Cadastre2"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker2"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AgreementType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AgreementType translation slug.",
                        "type": "string"
                    },
                    "pria_code": {
                        "title": "Pria \"poldKasutusOigus\" code.",
                        "description": "KR\t\tkirjalik rendileping\nO\t\tomandis\nSR\t\tsuuline rendileping\nKV\t\tkasutusvaldus\nM\t\tmuu",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Customer3": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "registry_code": {
                        "title": "Company code or person's national id, up to 64 characters",
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson3"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield3"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department3"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Company2": {
                "properties": {
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "name": {
                        "title": "Company name",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Worker3": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department3"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup2"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace2"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Department3": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "WorkerGroup2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Profession2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace2": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department3"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession2"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "CustomerPerson3": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer3"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "WorkobjectCategory2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agreement3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Computed field",
                        "type": "string"
                    },
                    "agreement_number": {
                        "title": "Agreement number",
                        "type": "string"
                    },
                    "agreement_type": {
                        "$ref": "#/components/schemas/AgreementType2"
                    },
                    "signing_time": {
                        "title": "agreement signing Time",
                        "type": "string",
                        "format": "date-time"
                    },
                    "from_time": {
                        "title": "Effect start date",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Effect end date",
                        "type": "string",
                        "format": "date-time"
                    },
                    "customer": {
                        "title": "Partner/Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer3"
                            }
                        ]
                    },
                    "customer_person": {
                        "title": "Partner/Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson3"
                            }
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "workobjects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield3"
                        }
                    },
                    "agreement_objects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgreementObject3"
                        }
                    },
                    "agreement_payment_detail": {
                        "$ref": "#/components/schemas/AgreementPaymentDetail2"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield3": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory2"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer3"
                    },
                    "agreement": {
                        "$ref": "#/components/schemas/Agreement3"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department3"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Cadastre3": {
                "properties": {
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AgreementObject3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "agreement": {
                        "$ref": "#/components/schemas/Agreement3"
                    },
                    "workobject": {
                        "$ref": "#/components/schemas/Agrifield3"
                    },
                    "cadastre": {
                        "$ref": "#/components/schemas/Cadastre3"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker3"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "AgreementPaymentDetail2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "account_number": {
                        "title": "Bank Account Number",
                        "type": "string"
                    },
                    "total_amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "paid_amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "next_payment_amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "next_payment_date": {
                        "title": "Next payment date",
                        "type": "string",
                        "format": "date-time"
                    },
                    "description": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Customer4": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "registry_code": {
                        "title": "Company code or person's national id, up to 64 characters",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson4": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer4"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agreement4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Computed field",
                        "type": "string"
                    },
                    "agreement_number": {
                        "title": "Agreement number",
                        "type": "string"
                    },
                    "agreement_type": {
                        "$ref": "#/components/schemas/AgreementType"
                    },
                    "signing_time": {
                        "title": "agreement signing Time",
                        "type": "string",
                        "format": "date-time"
                    },
                    "from_time": {
                        "title": "Effect start date",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Effect end date",
                        "type": "string",
                        "format": "date-time"
                    },
                    "customer": {
                        "title": "Partner/Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer4"
                            }
                        ]
                    },
                    "customer_person": {
                        "title": "Partner/Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson4"
                            }
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "workobjects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield4"
                        }
                    },
                    "agreement_objects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgreementObject4"
                        }
                    },
                    "agreement_payment_detail": {
                        "$ref": "#/components/schemas/AgreementPaymentDetail"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield4": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory"
                    },
                    "agreement": {
                        "$ref": "#/components/schemas/Agreement4"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AgreementObject4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "agreement": {
                        "$ref": "#/components/schemas/Agreement4"
                    },
                    "workobject": {
                        "$ref": "#/components/schemas/Agrifield4"
                    },
                    "cadastre": {
                        "$ref": "#/components/schemas/Cadastre4"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Cadastre4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "cadastre_number": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CompanyType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Country": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Company3": {
                "properties": {
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "name": {
                        "title": "Company name",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "company_type": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyType"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "country_code": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Country"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department4": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department4"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department4"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CropPeriod": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AgrifieldWorkCapacity": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company3"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype"
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod"
                    },
                    "hectares_total": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "Department5": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department5"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department5"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype2": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department5"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department5"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AgrifieldWorkCapacity2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company3"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype2"
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod"
                    },
                    "hectares_total": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "Department6": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department6"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype3": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department6"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AgrifieldWorkCapacity3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company3"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype3"
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod"
                    },
                    "hectares_total": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "Company4": {
                "properties": {
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "name": {
                        "title": "Company name",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Department7": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype4": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department7"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "WorkobjectCategory3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Customer5": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson5"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield5"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department7"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson5": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer5"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agrifield5": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory3"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer5"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department7"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AgrifieldGroup": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "CropPeriod2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "AgrifieldWork": {
                "properties": {
                    "crop_names": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "crop_names_str": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype4"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company4"
                    },
                    "agrifields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield5"
                        }
                    },
                    "agrifields_excluded": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield5"
                        }
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgrifieldGroup"
                        }
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod2"
                    },
                    "agrifield_work_material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgrifieldWorkMaterialUsage"
                        }
                    },
                    "planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Planitem"
                        }
                    },
                    "crop_str": {
                        "title": "Pipe separated crop names, served as the crop_names property through getCropNameArray().",
                        "description": "Legacy and stale: nothing in this codebase calls setCropStr() or writes the crop_str column,\nso whatever a row holds was written by an earlier version. The live value is $crops, which\ngetCropNameString() renders as crop_names_str - the two serialized properties can therefore\ndisagree, and $crops is the one to trust.",
                        "type": "string"
                    },
                    "crops": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Crop"
                        }
                    },
                    "customers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Customer5"
                        }
                    },
                    "location_areas": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/LocationArea"
                        }
                    },
                    "pria_payees": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PriaPayee"
                        }
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer5"
                    }
                },
                "type": "object"
            },
            "AmountCategory": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Amount category name",
                        "type": "string"
                    },
                    "shortname": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AmountCategory translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name",
                        "type": "string"
                    },
                    "shortname_slug": {
                        "type": "string"
                    },
                    "is_calculation_base": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "MaterialCategory": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material Category name, user defined. Required.",
                        "type": "string"
                    },
                    "shortname": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "Material Category translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name.",
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialConfig": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "default_amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "default_ratio_per_unit": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "Material": {
                "properties": {
                    "name_extended": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Material fullname, calculated value",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory"
                            }
                        ]
                    },
                    "calc_amount_category": {
                        "$ref": "#/components/schemas/AmountCategory"
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory"
                            }
                        ]
                    },
                    "is_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "material_config": {
                        "title": "One Config has One Material.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialConfig"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AgrifieldWorkMaterialUsage": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield5"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "Planitem": {
                "properties": {
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield5"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department7"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Crop": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "LocationArea": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "PriaPayee": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Department8": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department8"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype5": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department8"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer6": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson6"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield6"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department8"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson6": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer6"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agrifield6": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory3"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer6"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department8"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AgrifieldWork2": {
                "properties": {
                    "crop_names": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "crop_names_str": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype5"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company4"
                    },
                    "agrifields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield6"
                        }
                    },
                    "agrifields_excluded": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield6"
                        }
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgrifieldGroup"
                        }
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod2"
                    },
                    "agrifield_work_material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgrifieldWorkMaterialUsage2"
                        }
                    },
                    "planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Planitem2"
                        }
                    },
                    "crop_str": {
                        "title": "Pipe separated crop names, served as the crop_names property through getCropNameArray().",
                        "description": "Legacy and stale: nothing in this codebase calls setCropStr() or writes the crop_str column,\nso whatever a row holds was written by an earlier version. The live value is $crops, which\ngetCropNameString() renders as crop_names_str - the two serialized properties can therefore\ndisagree, and $crops is the one to trust.",
                        "type": "string"
                    },
                    "crops": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Crop"
                        }
                    },
                    "customers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Customer6"
                        }
                    },
                    "location_areas": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/LocationArea"
                        }
                    },
                    "pria_payees": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PriaPayee"
                        }
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer6"
                    }
                },
                "type": "object"
            },
            "AgrifieldWorkMaterialUsage2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork2"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield6"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "Planitem2": {
                "properties": {
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield6"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department8"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department9": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department9"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department9"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "User": {
                "properties": {
                    "email_verified": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosterVisibility": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worker4": {
                "properties": {
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "name": {
                        "type": "string"
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "color": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department9"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department9"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "user": {
                        "$ref": "#/components/schemas/User"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype6": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department9"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department9"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer7": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department9"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department9"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson7": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer7"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department9"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer7"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson7"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department9"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "WorkobjectCategory4": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Crop2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "base_name": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "hex_color": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "LocationArea2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield7": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "color": {
                        "type": "string"
                    },
                    "__field_number_sortable": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department9"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "water_protection_area_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "field_usage_description": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory4"
                    },
                    "crop": {
                        "$ref": "#/components/schemas/Crop2"
                    },
                    "crop_variety": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer7"
                    },
                    "location_area": {
                        "$ref": "#/components/schemas/LocationArea2"
                    },
                    "is_water_protection_active": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department9"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CostAccount": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Project": {
                "properties": {
                    "project_manager_fullname": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department9"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "outer_id": {
                        "title": "Project Id in external system, for example code in Accounting or Project Management system.",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department9"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Planitem3": {
                "properties": {
                    "is_group_plan": {
                        "type": "boolean"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department9"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker4"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker4"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype6"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield7"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage"
                        }
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork3"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer7"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer7"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson7"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus"
                            }
                        ]
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod"
                    },
                    "color": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department9"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility"
                    }
                },
                "type": "object"
            },
            "AmountCategory2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Amount category name",
                        "type": "string"
                    },
                    "shortname": {
                        "type": "string"
                    },
                    "base_unit_conversion_coef": {
                        "type": "number",
                        "format": "float",
                        "default": 1
                    },
                    "comment": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AmountCategory translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name",
                        "type": "string"
                    },
                    "shortname_slug": {
                        "type": "string"
                    },
                    "is_calculation_base": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialCategory2": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material Category name, user defined. Required.",
                        "type": "string"
                    },
                    "shortname": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "Material Category translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name.",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material2": {
                "properties": {
                    "name_extended": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Material fullname, calculated value",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "category_name": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory2"
                            }
                        ]
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory2"
                            }
                        ]
                    },
                    "formula_n": {
                        "type": "string"
                    },
                    "formula_p": {
                        "type": "string"
                    },
                    "formula_k": {
                        "type": "string"
                    },
                    "formula_s": {
                        "type": "string"
                    },
                    "formula_mg": {
                        "type": "string"
                    },
                    "formula_ca": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "batch_number": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem3"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material2"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield7"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AgrifieldGroup2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AgrifieldWork3": {
                "properties": {
                    "crop_names": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "crop_names_str": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype6"
                    },
                    "agrifields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield7"
                        }
                    },
                    "agrifields_excluded": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield7"
                        }
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgrifieldGroup2"
                        }
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod"
                    },
                    "agrifield_work_material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgrifieldWorkMaterialUsage3"
                        }
                    },
                    "crop_str": {
                        "title": "Pipe separated crop names, served as the crop_names property through getCropNameArray().",
                        "description": "Legacy and stale: nothing in this codebase calls setCropStr() or writes the crop_str column,\nso whatever a row holds was written by an earlier version. The live value is $crops, which\ngetCropNameString() renders as crop_names_str - the two serialized properties can therefore\ndisagree, and $crops is the one to trust.",
                        "type": "string"
                    },
                    "crops": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Crop2"
                        }
                    },
                    "customers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Customer7"
                        }
                    },
                    "location_areas": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/LocationArea2"
                        }
                    },
                    "pria_payees": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PriaPayee2"
                        }
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "AgrifieldWorkMaterialUsage3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork3"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material2"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "PriaPayee2": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FaultitemConsumer": {
                "type": "object"
            },
            "InspectionTemplate": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCase": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate"
                    },
                    "planned_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "status": {
                        "title": "Inspection Status",
                        "description": "Status values:\n0 - new (planned) status\n1 - inspection soon ( in 500 km OR 50 h OR 10 days )\n2 - inspection time (km, enginehour) arrived\n3 - inspection in progress\n4 - inspection closed with errors\n5 - inspection closed with great success\n6 - pre-usage checklist filled",
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FaultPlanitem": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem3"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Faultitem": {
                "properties": {
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fault_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fault_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "resolved_at_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "resolved_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype6"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fault_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultPlanitem"
                        }
                    },
                    "severity": {
                        "type": "integer",
                        "default": 2
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem3"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "PlanStatus": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosterType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Name (unique)",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Translation slug",
                        "type": "string"
                    },
                    "hex_color": {
                        "title": "Background color of event",
                        "type": "string"
                    },
                    "is_planitem": {
                        "title": "Planitem event",
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Calendaritem": {
                "type": "object"
            },
            "RosteritemRecurrence": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Cadastre5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "cadastre_number": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "cadastrial_info": {
                        "type": "string"
                    },
                    "geometry": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worker5": {
                "properties": {
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department10"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker5"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker5"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department10": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker5"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker5"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department10"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Cadastre6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "cadastre_number": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "cadastrial_info": {
                        "type": "string"
                    },
                    "geometry": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker5"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker5"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CompanyType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Currency": {
                "properties": {
                    "code": {
                        "title": "ISO 4217 code of currency",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Currency slug",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Country2": {
                "properties": {
                    "code": {
                        "title": "ISO 3361-1 Alpha-2 code of country",
                        "type": "string"
                    },
                    "name": {
                        "title": "Country short name in English",
                        "type": "string"
                    },
                    "local_name": {
                        "title": "Country short name in local language and local alphabet",
                        "type": "string"
                    },
                    "language_code": {
                        "title": "Default language code for that Country.",
                        "type": "string"
                    },
                    "currency_code": {
                        "title": "Default currency for that Country",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Currency"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosterVisibility2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CompanyLanguages": {
                "type": "object"
            },
            "Company5": {
                "properties": {
                    "rowclass": {
                        "type": "string"
                    },
                    "is_setup": {
                        "title": "true if Company setup is finished",
                        "type": "boolean"
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "name": {
                        "title": "Company name",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "regnr": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company_type": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyType2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fieldbook_plan_comments": {
                        "type": "boolean",
                        "default": false
                    },
                    "fieldbook_workdone_comments": {
                        "type": "boolean",
                        "default": false
                    },
                    "country_code": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Country2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "language_code": {
                        "title": "Default language code. In this language informational e-mails are sent.",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "currency_code": {
                        "title": "Default currency in monetary fields and calculations",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Currency"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "roster_visibility": {
                        "title": "Default Roster Visibility type for new workers",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "send_welcome_letter": {
                        "title": "Whether new workers with e-mail set must get informational e-mail",
                        "type": "boolean",
                        "default": true
                    },
                    "workday_length": {
                        "title": "Workday norm hours length",
                        "type": "number",
                        "format": "float",
                        "default": "8.00"
                    },
                    "overtime_length": {
                        "title": "Workday overtime hours length",
                        "type": "number",
                        "format": "float",
                        "default": "4.00"
                    },
                    "permanent_delete_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company_languages": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyLanguages"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "test_period_days": {
                        "type": "integer",
                        "default": 30
                    },
                    "is_invoice_paid": {
                        "title": "If false, shows bink ribbon \"Invoice is not paid\"",
                        "type": "boolean",
                        "default": true
                    },
                    "is_invoice_bad": {
                        "title": "If true, shows big red flag \"Please immediately pay, otherwise your access will be limited\"",
                        "type": "boolean",
                        "default": false
                    },
                    "is_lastname_first": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_creation_enabled": {
                        "type": "boolean",
                        "default": true
                    },
                    "is_regnr_verified": {
                        "type": "boolean",
                        "default": false
                    },
                    "upload_max_filesize": {
                        "type": "integer",
                        "default": 2
                    },
                    "custom_parameter_conf": {
                        "description": "Custom form fields per entity kind, e.g. {\"faultitem\": [{\"name\", \"title\", \"value_type\", ...}]}",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CompanyParameter": {
                "properties": {
                    "code": {
                        "type": "string"
                    },
                    "value_str": {
                        "type": "string"
                    },
                    "value_int": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "CostAccount2": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CostAccount3": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department11": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department11"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype7": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department11"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker6": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department11"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker6"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup3"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace3"
                        }
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "WorkerGroup3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Profession3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace3": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department11"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession3"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "FacilityType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer8": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson8"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield8"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department11"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson8": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer8"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agrifield8": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory3"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer8"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department11"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility2": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType"
                            }
                        ]
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield8"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer8"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson8"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department11"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "ProjectWorker": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker6"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "ProjectWorktype": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype7"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "ProjectFacility": {
                "properties": {
                    "resource": {
                        "title": "Get Resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility2"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Project2": {
                "properties": {
                    "planned_work_hours": {
                        "type": "number",
                        "format": "double"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_work_seconds": {
                        "type": "integer"
                    },
                    "planned_budget": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "project_workers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorker"
                        }
                    },
                    "project_worktypes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorktype"
                        }
                    },
                    "project_facilities": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectFacility"
                        }
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department11"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CostAccountRule": {
                "properties": {
                    "worker_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "worker_names": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company4"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount3"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype7"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker6"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility2"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield8"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project2"
                    },
                    "crop": {
                        "$ref": "#/components/schemas/Crop"
                    },
                    "sort_order": {
                        "type": "integer",
                        "default": 1
                    },
                    "workers": {
                        "title": "Many CostAccounts have Many Workers.",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worker6"
                        }
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Crop3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "base_name": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "hex_color": {
                        "type": "string"
                    },
                    "master_crop": {
                        "title": "Remaining crop after crops join",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Crop3"
                            }
                        ]
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "crop_type": {
                        "title": "Crop Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropType"
                            }
                        ]
                    },
                    "moisture_dry": {
                        "title": "Moisture content of dry (elevator) crop (usually 13% or below)",
                        "type": "integer",
                        "default": 13
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CropArchive"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CropType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CropArchive": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer9": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "registry_code": {
                        "title": "Company code or person's national id, up to 64 characters",
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "sharing_start": {
                        "title": "The moment when sharing starts",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "sharing_end": {
                        "title": "The moment when sharing ends",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "invitation_sent_at": {
                        "title": "The moment when invitation was sent",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "invitation_responded_at": {
                        "title": "The moment when invitation was responded",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson9"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield9"
                            }
                        ]
                    },
                    "fault_severity": {
                        "title": "Fault severity",
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department12"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson9": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer9"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Department12": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department12"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield9": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory3"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer9"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department12"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer10": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "shared_facility_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_workobject_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_worktype_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_material_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "registry_code": {
                        "title": "Company code or person's national id, up to 64 characters",
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "sharing_start": {
                        "title": "The moment when sharing starts",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "sharing_end": {
                        "title": "The moment when sharing ends",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "invitation_sent_at": {
                        "title": "The moment when invitation was sent",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "invitation_responded_at": {
                        "title": "The moment when invitation was responded",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson10"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield10"
                            }
                        ]
                    },
                    "fault_severity": {
                        "title": "Fault severity",
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker7"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker7"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department13"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker7": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department13"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker7"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup2"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace4"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker7"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker7"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Department13": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker7"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker7"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department13"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Profession4": {
                "properties": {
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace4": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department13"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession4"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "CustomerPerson10": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer10"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker7"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker7"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "WorkobjectCategory5": {
                "properties": {
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agrifield10": {
                "properties": {
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory5"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer10"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker7"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker7"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department13"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer11": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "shared_facility_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_workobject_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_worktype_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_material_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "registry_code": {
                        "title": "Company code or person's national id, up to 64 characters",
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "sharing_start": {
                        "title": "The moment when sharing starts",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "sharing_end": {
                        "title": "The moment when sharing ends",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "invitation_sent_at": {
                        "title": "The moment when invitation was sent",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "invitation_responded_at": {
                        "title": "The moment when invitation was responded",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson11"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield11"
                            }
                        ]
                    },
                    "fault_severity": {
                        "title": "Fault severity",
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker8"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker8"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department14"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker8": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department14"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker8"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup2"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace5"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker8"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker8"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Department14": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker8"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker8"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department14"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace5": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department14"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession4"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "CustomerPerson11": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer11"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker8"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker8"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agrifield11": {
                "properties": {
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory5"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer11"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker8"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker8"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department14"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer12": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "registry_code": {
                        "title": "Company code or person's national id, up to 64 characters",
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "sharing_start": {
                        "title": "The moment when sharing starts",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "sharing_end": {
                        "title": "The moment when sharing ends",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "invitation_sent_at": {
                        "title": "The moment when invitation was sent",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "invitation_responded_at": {
                        "title": "The moment when invitation was responded",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson12"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield12"
                            }
                        ]
                    },
                    "fault_severity": {
                        "title": "Fault severity",
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker9"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker9"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department15"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker9": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department15"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker9"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup2"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace6"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker9"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker9"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Department15": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker9"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker9"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department15"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace6": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department15"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession2"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "CustomerPerson12": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer12"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker9"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker9"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agrifield12": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory2"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer12"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker9"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker9"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department15"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Company6": {
                "properties": {
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "name": {
                        "title": "Company name",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Worker10": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker10"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker10"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "CustomerPerson13": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker10"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker10"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Company7": {
                "properties": {
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "name": {
                        "title": "Company name",
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson14": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield13": {
                "properties": {
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer13": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "shared_facility_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_workobject_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_worktype_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_material_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "registry_code": {
                        "title": "Company code or person's national id, up to 64 characters",
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "sharing_start": {
                        "title": "The moment when sharing starts",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "sharing_end": {
                        "title": "The moment when sharing ends",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "invitation_sent_at": {
                        "title": "The moment when invitation was sent",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "invitation_responded_at": {
                        "title": "The moment when invitation was responded",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson14"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield13"
                            }
                        ]
                    },
                    "fault_severity": {
                        "title": "Fault severity",
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department16": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department16"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department17": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker11"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker11"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department17"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker11": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department17"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker11"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace7"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker11"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker11"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workplace7": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department17"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "FacilityType2": {
                "properties": {
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker12": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department18"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace8"
                        }
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department18": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department18"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Profession5": {
                "properties": {
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace8": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department18"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession5"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "TerakeObjectType2": {
                "properties": {
                    "code": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CalendarEventType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "object_code": {
                        "$ref": "#/components/schemas/TerakeObjectType2"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CalendarEvent": {
                "properties": {
                    "id": {
                        "title": "Calendar Event id in Terake",
                        "type": "integer"
                    },
                    "event_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "calendar_event_type": {
                        "$ref": "#/components/schemas/CalendarEventType"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype8": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department18"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "enginehours": {
                        "type": "integer",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "integer",
                        "default": 0
                    },
                    "days": {
                        "type": "integer",
                        "default": 0
                    },
                    "enginehours_alert": {
                        "type": "integer",
                        "default": 0
                    },
                    "kilometers_alert": {
                        "type": "integer",
                        "default": 0
                    },
                    "days_alert": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_every_use_check": {
                        "title": "True if frequency is for every use",
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionTemplate2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_type": {
                        "$ref": "#/components/schemas/InspectionType"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionMasterTemplate": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "inspection_templates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionTemplate2"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityParams": {
                "properties": {
                    "enginehours_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "kilometers_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "WorkobjectCategory6": {
                "properties": {
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Customer14": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "shared_facility_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_workobject_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_worktype_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_material_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson15"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield14"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department18"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson15": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer14"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield14": {
                "properties": {
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory6"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer14"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department18"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility3": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "show_in_map": {
                        "title": "True if facility must be visible in map",
                        "type": "boolean",
                        "default": true
                    },
                    "linkable_reg_number": {
                        "title": "Vehicle registration number for integration tools",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType2"
                            }
                        ]
                    },
                    "is_main_facility": {
                        "title": "True if Facility is main facility",
                        "type": "boolean",
                        "default": false
                    },
                    "is_secondary_facility": {
                        "title": "True if Facility is secondary facility (implement, trailer)",
                        "type": "boolean",
                        "default": false
                    },
                    "worktypes": {
                        "title": "Worktypes",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worktype8"
                        }
                    },
                    "is_replaceable": {
                        "title": "True if facility is easily replacable (has big stock)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_maintainable": {
                        "title": "True if facility is maintaineable unit",
                        "type": "boolean",
                        "default": false
                    },
                    "outer_id": {
                        "title": "ID in external system like code in accounting system, tech. passport number, etc",
                        "type": "string"
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "enginehours_timestamp": {
                        "title": "Registration year, number",
                        "type": "integer",
                        "default": 0
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "odometer_timestamp": {
                        "title": "Odometer last value timestamp",
                        "type": "integer",
                        "default": 0
                    },
                    "auto_workdone_duration": {
                        "title": "If > 0, then Facility movement more than in duration of autoWorkdoneDuration seconds creates automatically workdone(s)",
                        "type": "integer",
                        "default": 0
                    },
                    "maintenance_worker": {
                        "title": "Person responsible for maintenance",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker12"
                            }
                        ]
                    },
                    "storage_worker": {
                        "title": "Person responsible for storage",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker12"
                            }
                        ]
                    },
                    "inspection_schedule": {
                        "title": "Inspection schedule",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionMasterTemplate"
                            }
                        ]
                    },
                    "facility_params": {
                        "$ref": "#/components/schemas/FacilityParams"
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield14"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer14"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson15"
                            }
                        ]
                    },
                    "last_inventory_log": {
                        "title": "Last (in force) entry in Inventory Log",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InventoryFacilityLog"
                            }
                        ]
                    },
                    "nfc": {
                        "title": "Facility NFC code",
                        "type": "string"
                    },
                    "qr": {
                        "title": "Facility QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityArchive"
                        }
                    },
                    "accounting_unit_type": {
                        "title": "Accounting Unit Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AccountingUnitType"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department18"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InventoryStatusType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InventoryEventType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "previous_status": {
                        "$ref": "#/components/schemas/InventoryStatusType"
                    },
                    "next_status": {
                        "$ref": "#/components/schemas/InventoryStatusType"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_owner_event": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_user_event": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InventoryFacilityLog": {
                "properties": {
                    "id": {
                        "title": "Inventory Log entry Id in Terake",
                        "type": "integer"
                    },
                    "facility": {
                        "title": "Facility related to Inventory Log entry",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility3"
                            }
                        ]
                    },
                    "worker": {
                        "title": "Worker who registered this entry in Inventory Log",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker12"
                            }
                        ]
                    },
                    "inventory_event_type": {
                        "title": "Inventory Log entry logged Event Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InventoryEventType"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "QrImage": {
                "properties": {
                    "qr_text": {
                        "title": "Qr or Barcode content in text format",
                        "type": "string"
                    },
                    "png": {
                        "title": "Qr or Barcode Image in png (base64 encoded) format",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "FacilityArchive": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker12"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AccountingUnitType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Type name",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Name translation slug. Should be preferred over Name",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worker13": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department19"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace9"
                        }
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent2"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department19": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department19"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace9": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department19"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession5"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "CalendarEvent2": {
                "properties": {
                    "id": {
                        "title": "Calendar Event id in Terake",
                        "type": "integer"
                    },
                    "event_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "calendar_event_type": {
                        "$ref": "#/components/schemas/CalendarEventType"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype9": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department19"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer15": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "shared_facility_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_workobject_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_worktype_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "shared_material_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson16"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield15"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department19"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson16": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer15"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield15": {
                "properties": {
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory6"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer15"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department19"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility4": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "show_in_map": {
                        "title": "True if facility must be visible in map",
                        "type": "boolean",
                        "default": true
                    },
                    "linkable_reg_number": {
                        "title": "Vehicle registration number for integration tools",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType2"
                            }
                        ]
                    },
                    "is_main_facility": {
                        "title": "True if Facility is main facility",
                        "type": "boolean",
                        "default": false
                    },
                    "is_secondary_facility": {
                        "title": "True if Facility is secondary facility (implement, trailer)",
                        "type": "boolean",
                        "default": false
                    },
                    "worktypes": {
                        "title": "Worktypes",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worktype9"
                        }
                    },
                    "is_replaceable": {
                        "title": "True if facility is easily replacable (has big stock)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_maintainable": {
                        "title": "True if facility is maintaineable unit",
                        "type": "boolean",
                        "default": false
                    },
                    "outer_id": {
                        "title": "ID in external system like code in accounting system, tech. passport number, etc",
                        "type": "string"
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "enginehours_timestamp": {
                        "title": "Registration year, number",
                        "type": "integer",
                        "default": 0
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "odometer_timestamp": {
                        "title": "Odometer last value timestamp",
                        "type": "integer",
                        "default": 0
                    },
                    "auto_workdone_duration": {
                        "title": "If > 0, then Facility movement more than in duration of autoWorkdoneDuration seconds creates automatically workdone(s)",
                        "type": "integer",
                        "default": 0
                    },
                    "maintenance_worker": {
                        "title": "Person responsible for maintenance",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker13"
                            }
                        ]
                    },
                    "storage_worker": {
                        "title": "Person responsible for storage",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker13"
                            }
                        ]
                    },
                    "inspection_schedule": {
                        "title": "Inspection schedule",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionMasterTemplate"
                            }
                        ]
                    },
                    "facility_params": {
                        "$ref": "#/components/schemas/FacilityParams"
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent2"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield15"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer15"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson16"
                            }
                        ]
                    },
                    "last_inventory_log": {
                        "title": "Last (in force) entry in Inventory Log",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InventoryFacilityLog2"
                            }
                        ]
                    },
                    "nfc": {
                        "title": "Facility NFC code",
                        "type": "string"
                    },
                    "qr": {
                        "title": "Facility QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityArchive2"
                        }
                    },
                    "accounting_unit_type": {
                        "title": "Accounting Unit Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AccountingUnitType"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department19"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InventoryFacilityLog2": {
                "properties": {
                    "id": {
                        "title": "Inventory Log entry Id in Terake",
                        "type": "integer"
                    },
                    "facility": {
                        "title": "Facility related to Inventory Log entry",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility4"
                            }
                        ]
                    },
                    "worker": {
                        "title": "Worker who registered this entry in Inventory Log",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker13"
                            }
                        ]
                    },
                    "inventory_event_type": {
                        "title": "Inventory Log entry logged Event Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InventoryEventType"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityArchive2": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker13"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "FacilityType3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype10": {
                "properties": {
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker14": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    }
                },
                "type": "object"
            },
            "InspectionMasterTemplate2": {
                "type": "object"
            },
            "CalendarEvent3": {
                "type": "object"
            },
            "Agrifield16": {
                "properties": {
                    "location_address": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer16": {
                "properties": {
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson17": {
                "type": "object"
            },
            "Facility5": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "show_in_map": {
                        "title": "True if facility must be visible in map",
                        "type": "boolean",
                        "default": true
                    },
                    "linkable_reg_number": {
                        "title": "Vehicle registration number for integration tools",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType3"
                            }
                        ]
                    },
                    "is_main_facility": {
                        "title": "True if Facility is main facility",
                        "type": "boolean",
                        "default": false
                    },
                    "is_secondary_facility": {
                        "title": "True if Facility is secondary facility (implement, trailer)",
                        "type": "boolean",
                        "default": false
                    },
                    "worktypes": {
                        "title": "Worktypes",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worktype10"
                        }
                    },
                    "is_replaceable": {
                        "title": "True if facility is easily replacable (has big stock)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_maintainable": {
                        "title": "True if facility is maintaineable unit",
                        "type": "boolean",
                        "default": false
                    },
                    "outer_id": {
                        "title": "ID in external system like code in accounting system, tech. passport number, etc",
                        "type": "string"
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "enginehours_timestamp": {
                        "title": "Registration year, number",
                        "type": "integer",
                        "default": 0
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "odometer_timestamp": {
                        "title": "Odometer last value timestamp",
                        "type": "integer",
                        "default": 0
                    },
                    "auto_workdone_duration": {
                        "title": "If > 0, then Facility movement more than in duration of autoWorkdoneDuration seconds creates automatically workdone(s)",
                        "type": "integer",
                        "default": 0
                    },
                    "maintenance_worker": {
                        "title": "Person responsible for maintenance",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker14"
                            }
                        ]
                    },
                    "storage_worker": {
                        "title": "Person responsible for storage",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker14"
                            }
                        ]
                    },
                    "inspection_schedule": {
                        "title": "Inspection schedule",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionMasterTemplate2"
                            }
                        ]
                    },
                    "facility_params": {
                        "$ref": "#/components/schemas/FacilityParams"
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent3"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield16"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer16"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson17"
                            }
                        ]
                    },
                    "last_inventory_log": {
                        "title": "Last (in force) entry in Inventory Log",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InventoryFacilityLog3"
                            }
                        ]
                    },
                    "nfc": {
                        "title": "Facility NFC code",
                        "type": "string"
                    },
                    "qr": {
                        "title": "Facility QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage2"
                            }
                        ]
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityArchive3"
                        }
                    },
                    "accounting_unit_type": {
                        "title": "Accounting Unit Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AccountingUnitType2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InventoryStatusType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InventoryEventType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "previous_status": {
                        "$ref": "#/components/schemas/InventoryStatusType2"
                    },
                    "next_status": {
                        "$ref": "#/components/schemas/InventoryStatusType2"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InventoryFacilityLog3": {
                "properties": {
                    "id": {
                        "title": "Inventory Log entry Id in Terake",
                        "type": "integer"
                    },
                    "facility": {
                        "title": "Facility related to Inventory Log entry",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility5"
                            }
                        ]
                    },
                    "worker": {
                        "title": "Worker who registered this entry in Inventory Log",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker14"
                            }
                        ]
                    },
                    "inventory_event_type": {
                        "title": "Inventory Log entry logged Event Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InventoryEventType2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "QrImage2": {
                "properties": {
                    "qr_text": {
                        "title": "Qr or Barcode content in text format",
                        "type": "string"
                    },
                    "png": {
                        "title": "Qr or Barcode Image in png (base64 encoded) format",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityArchive3": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AccountingUnitType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Type name",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Name translation slug. Should be preferred over Name",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityType4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department20": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department20"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype11": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department20"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker15": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department20"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker15"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace10"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workplace10": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department20"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "CalendarEvent4": {
                "properties": {
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "WorkobjectCategory7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Customer17": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson18"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield17"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department20"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson18": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer17"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield17": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory7"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer17"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department20"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility6": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "show_in_map": {
                        "title": "True if facility must be visible in map",
                        "type": "boolean",
                        "default": true
                    },
                    "linkable_reg_number": {
                        "title": "Vehicle registration number for integration tools",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType4"
                            }
                        ]
                    },
                    "is_main_facility": {
                        "title": "True if Facility is main facility",
                        "type": "boolean",
                        "default": false
                    },
                    "is_secondary_facility": {
                        "title": "True if Facility is secondary facility (implement, trailer)",
                        "type": "boolean",
                        "default": false
                    },
                    "worktypes": {
                        "title": "Worktypes",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worktype11"
                        }
                    },
                    "is_replaceable": {
                        "title": "True if facility is easily replacable (has big stock)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_maintainable": {
                        "title": "True if facility is maintaineable unit",
                        "type": "boolean",
                        "default": false
                    },
                    "outer_id": {
                        "title": "ID in external system like code in accounting system, tech. passport number, etc",
                        "type": "string"
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "enginehours_timestamp": {
                        "title": "Registration year, number",
                        "type": "integer",
                        "default": 0
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "odometer_timestamp": {
                        "title": "Odometer last value timestamp",
                        "type": "integer",
                        "default": 0
                    },
                    "auto_workdone_duration": {
                        "title": "If > 0, then Facility movement more than in duration of autoWorkdoneDuration seconds creates automatically workdone(s)",
                        "type": "integer",
                        "default": 0
                    },
                    "maintenance_worker": {
                        "title": "Person responsible for maintenance",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker15"
                            }
                        ]
                    },
                    "storage_worker": {
                        "title": "Person responsible for storage",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker15"
                            }
                        ]
                    },
                    "inspection_schedule": {
                        "title": "Inspection schedule",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionMasterTemplate"
                            }
                        ]
                    },
                    "facility_params": {
                        "$ref": "#/components/schemas/FacilityParams"
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent4"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield17"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer17"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson18"
                            }
                        ]
                    },
                    "last_inventory_log": {
                        "title": "Last (in force) entry in Inventory Log",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InventoryFacilityLog4"
                            }
                        ]
                    },
                    "nfc": {
                        "title": "Facility NFC code",
                        "type": "string"
                    },
                    "qr": {
                        "title": "Facility QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityArchive4"
                        }
                    },
                    "accounting_unit_type": {
                        "title": "Accounting Unit Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AccountingUnitType"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department20"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InventoryFacilityLog4": {
                "properties": {
                    "id": {
                        "title": "Inventory Log entry Id in Terake",
                        "type": "integer"
                    },
                    "facility": {
                        "title": "Facility related to Inventory Log entry",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility6"
                            }
                        ]
                    },
                    "worker": {
                        "title": "Worker who registered this entry in Inventory Log",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker15"
                            }
                        ]
                    },
                    "inventory_event_type": {
                        "title": "Inventory Log entry logged Event Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InventoryEventType"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityArchive4": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AmountCategory3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Amount category name",
                        "type": "string"
                    },
                    "shortname": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AmountCategory translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name",
                        "type": "string"
                    },
                    "shortname_slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Material3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory3"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionTask": {
                "properties": {
                    "id": {
                        "title": "Describes Individual Task or Checkup needed to perform during each Inspection\nSeparate InspectionMasterTemplates have separate InspectionTasks\nInspetionTasks are combined in help of InspectionTemplateItem into InspectionTemplates\n(which together define, what tasks are performed when)",
                        "type": "integer"
                    },
                    "short_desc": {
                        "title": "Maintained part name or description",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "InspectionTask fullname, Utf8 string 1000 chars",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "LifespanType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityPartLifespan": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType"
                    },
                    "initial_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "warning_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "end_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "current_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityPart": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "serial_number": {
                        "type": "string",
                        "default": ""
                    },
                    "description": {
                        "type": "string",
                        "default": ""
                    },
                    "material": {
                        "title": "Material",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material3"
                            }
                        ]
                    },
                    "amount": {
                        "title": "MAterial amount",
                        "type": "number",
                        "format": "float"
                    },
                    "replace_inspection_task": {
                        "title": "Part Replacement Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask"
                            }
                        ]
                    },
                    "check_inspection_task": {
                        "title": "Part Check Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask"
                            }
                        ]
                    },
                    "lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPartLifespan"
                        }
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "notified_fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityPart2": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "serial_number": {
                        "type": "string",
                        "default": ""
                    },
                    "description": {
                        "type": "string",
                        "default": ""
                    },
                    "material": {
                        "title": "Material",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material3"
                            }
                        ]
                    },
                    "amount": {
                        "title": "MAterial amount",
                        "type": "number",
                        "format": "float"
                    },
                    "replace_inspection_task": {
                        "title": "Part Replacement Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask"
                            }
                        ]
                    },
                    "check_inspection_task": {
                        "title": "Part Check Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask"
                            }
                        ]
                    },
                    "lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPartLifespan"
                        }
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "notified_fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "lifespan_logs": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPartLifespanLog"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department21": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department21"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker16": {
                "properties": {
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department21"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCase2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "supervisor": {
                        "$ref": "#/components/schemas/Worker16"
                    },
                    "inspector": {
                        "$ref": "#/components/schemas/Worker16"
                    },
                    "approver": {
                        "$ref": "#/components/schemas/Worker16"
                    },
                    "approved_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCaseItem": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase2"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker16"
                    },
                    "validate_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityPartLifespanLog": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "facility_part": {
                        "$ref": "#/components/schemas/FacilityPart2"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType"
                    },
                    "inspection_case_item": {
                        "$ref": "#/components/schemas/InspectionCaseItem"
                    },
                    "current_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialCategory3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material Category name, user defined. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Material Category translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name.",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory3"
                            }
                        ]
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory3"
                            }
                        ]
                    },
                    "batch_number": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "FacilityPart3": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "serial_number": {
                        "type": "string",
                        "default": ""
                    },
                    "description": {
                        "type": "string",
                        "default": ""
                    },
                    "material": {
                        "title": "Material",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material4"
                            }
                        ]
                    },
                    "amount": {
                        "title": "MAterial amount",
                        "type": "number",
                        "format": "float"
                    },
                    "replace_inspection_task": {
                        "title": "Part Replacement Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask"
                            }
                        ]
                    },
                    "check_inspection_task": {
                        "title": "Part Check Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask"
                            }
                        ]
                    },
                    "lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPartLifespan"
                        }
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "notified_fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityPart4": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "facility": {
                        "title": "Facility",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility7"
                            }
                        ]
                    },
                    "material": {
                        "title": "Material",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material5"
                            }
                        ]
                    },
                    "amount": {
                        "title": "MAterial amount",
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department22": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department22"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility7": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "enginehours_timestamp": {
                        "title": "Registration year, number",
                        "type": "integer",
                        "default": 0
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "odometer_timestamp": {
                        "title": "Odometer last value timestamp",
                        "type": "integer",
                        "default": 0
                    },
                    "parts": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPart4"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department22"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialLifespan": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType"
                    },
                    "initial_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "warning_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "end_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Material5": {
                "properties": {
                    "material_lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialLifespan"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityPart5": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "serial_number": {
                        "type": "string",
                        "default": ""
                    },
                    "description": {
                        "type": "string",
                        "default": ""
                    },
                    "facility": {
                        "title": "Facility",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility8"
                            }
                        ]
                    },
                    "material": {
                        "title": "Material",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material6"
                            }
                        ]
                    },
                    "amount": {
                        "title": "MAterial amount",
                        "type": "number",
                        "format": "float"
                    },
                    "replace_inspection_task": {
                        "title": "Part Replacement Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask"
                            }
                        ]
                    },
                    "check_inspection_task": {
                        "title": "Part Check Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask"
                            }
                        ]
                    },
                    "lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPartLifespan"
                        }
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "notified_fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department23": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department23"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility8": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "enginehours_timestamp": {
                        "title": "Registration year, number",
                        "type": "integer",
                        "default": 0
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "odometer_timestamp": {
                        "title": "Odometer last value timestamp",
                        "type": "integer",
                        "default": 0
                    },
                    "parts": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPart5"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department23"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory3"
                            }
                        ]
                    },
                    "material_lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialLifespan"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "LifespanType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCase3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "supervisor": {
                        "$ref": "#/components/schemas/Worker"
                    },
                    "inspector": {
                        "$ref": "#/components/schemas/Worker"
                    },
                    "approver": {
                        "$ref": "#/components/schemas/Worker"
                    },
                    "approved_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "InspectionCaseItem2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase3"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker"
                    },
                    "validate_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "FacilityPartLifespanLog2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType2"
                    },
                    "inspection_case_item": {
                        "$ref": "#/components/schemas/InspectionCaseItem2"
                    },
                    "current_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Worker17": {
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department24"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department24": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department24"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield18": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department24"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer18": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department24"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson19": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer18"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility9": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield18"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer18"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson19"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department24"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype12": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department24"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionCase4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enginehours": {
                        "type": "integer",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "integer",
                        "default": 0
                    },
                    "supervisor": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate"
                    },
                    "status": {
                        "title": "Inspection Status",
                        "description": "Status values:\n0 - new (planned) status\n1 - inspection soon ( in 500 km OR 50 h OR 10 days )\n2 - inspection time (km, enginehour) arrived\n3 - inspection in progress\n4 - inspection closed with errors\n5 - inspection closed with great success\n6 - pre-usage checklist filled",
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Faultitem2": {
                "properties": {
                    "rowclass": {
                        "type": "string"
                    },
                    "fault_status": {
                        "type": "string"
                    },
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "faultitem_consumer_class": {
                        "title": "Faultitem Consumer Class",
                        "type": "string"
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fault_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fault_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "resolved_at_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "resolved_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker17"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility9"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype12"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "outer_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase4"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fault_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultPlanitem2"
                        }
                    },
                    "severity": {
                        "type": "integer",
                        "default": 2
                    },
                    "fault_reporting_location": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/DeviceLocation"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "faultitem_pictures": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultitemPicture"
                        }
                    },
                    "workdone": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workdone"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_uuid": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "maintenance_worker": {
                        "title": "Person responsible for repairing",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker17"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "planned_start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CostAccount4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Project3": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department24"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Planitem4": {
                "properties": {
                    "is_group_plan": {
                        "type": "boolean"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype12"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility9"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility9"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield18"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount4"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project3"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage2"
                        }
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork4"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer18"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer18"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson19"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem2"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem2"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus"
                            }
                        ]
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod3"
                    },
                    "color": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence2"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department24"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility9"
                    }
                },
                "type": "object"
            },
            "AmountCategory4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Amount category name",
                        "type": "string"
                    },
                    "slug": {
                        "title": "AmountCategory translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name",
                        "type": "string"
                    },
                    "shortname_slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Material7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory4"
                            }
                        ]
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory3"
                            }
                        ]
                    },
                    "batch_number": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem4"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material7"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield18"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AgrifieldWork4": {
                "type": "object"
            },
            "FaultPlanitem2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem2"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem4"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase4"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem4"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CropPeriod3": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence2": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker17"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "DeviceLocation": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "device_uuid": {
                        "type": "string",
                        "default": ""
                    },
                    "gps_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "latitude": {
                        "title": "Doctrine hydrates a decimal as a string (\"58.36494\"); serialized and read as a float.",
                        "type": "number",
                        "format": "float",
                        "default": "0.00000"
                    },
                    "longitude": {
                        "type": "number",
                        "format": "float",
                        "default": "0.00000"
                    }
                },
                "type": "object"
            },
            "FaultitemPicture": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workdone": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker17"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype12"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility9"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility9"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility9"
                    }
                },
                "type": "object"
            },
            "Worker18": {
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "color": {
                        "type": "string"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department25"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup"
                        }
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace11"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department25": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department25"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace11": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department25"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Customer19": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson20"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield19"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department25"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson20": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer19"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield19": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "responsible_worker": {
                        "title": "Person responsible for solving issues, faults and problems",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker18"
                            }
                        ]
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory7"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer19"
                    },
                    "second_worker": {
                        "title": "Second responsible person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker18"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department25"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility10": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "responsible_worker": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType4"
                            }
                        ]
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield19"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer19"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson20"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department25"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype13": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department25"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionCase5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enginehours": {
                        "type": "integer",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "integer",
                        "default": 0
                    },
                    "supervisor": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate2"
                    },
                    "planned_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "status": {
                        "title": "Inspection Status",
                        "description": "Status values:\n0 - new (planned) status\n1 - inspection soon ( in 500 km OR 50 h OR 10 days )\n2 - inspection time (km, enginehour) arrived\n3 - inspection in progress\n4 - inspection closed with errors\n5 - inspection closed with great success\n6 - pre-usage checklist filled",
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Faultitem3": {
                "properties": {
                    "rowclass": {
                        "type": "string"
                    },
                    "fault_status": {
                        "type": "string"
                    },
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "faultitem_consumer_class": {
                        "title": "Faultitem Consumer Class",
                        "type": "string"
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fault_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fault_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "resolved_at_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "resolved_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker18"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility10"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype13"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "outer_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase5"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fault_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultPlanitem3"
                        }
                    },
                    "severity": {
                        "type": "integer",
                        "default": 2
                    },
                    "fault_reporting_location": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/DeviceLocation"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "faultitem_pictures": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultitemPicture2"
                        }
                    },
                    "workdone": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workdone2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_uuid": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "maintenance_worker": {
                        "title": "Person responsible for repairing",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker18"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "planned_start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CostAccount5": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "ProjectWorker2": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker18"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "ProjectWorktype2": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype13"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "ProjectFacility2": {
                "properties": {
                    "resource": {
                        "title": "Get Resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility10"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Project4": {
                "properties": {
                    "planned_work_hours": {
                        "type": "number",
                        "format": "double"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_work_seconds": {
                        "type": "integer"
                    },
                    "planned_budget": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "project_workers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorker2"
                        }
                    },
                    "project_worktypes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorktype2"
                        }
                    },
                    "project_facilities": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectFacility2"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department25"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Planitem5": {
                "properties": {
                    "is_group_plan": {
                        "type": "boolean"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype13"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility10"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility10"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield19"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount5"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project4"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage3"
                        }
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork4"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer19"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer19"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson20"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem3"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem3"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus"
                            }
                        ]
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod"
                    },
                    "color": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType2"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence3"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department25"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility10"
                    }
                },
                "type": "object"
            },
            "AmountCategory5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Amount category name",
                        "type": "string"
                    },
                    "shortname": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AmountCategory translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name",
                        "type": "string"
                    },
                    "shortname_slug": {
                        "type": "string"
                    },
                    "is_calculation_base": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialCategory4": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material Category name, user defined. Required.",
                        "type": "string"
                    },
                    "shortname": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "Material Category translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name.",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material8": {
                "properties": {
                    "name_extended": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Material fullname, calculated value",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory5"
                            }
                        ]
                    },
                    "calc_amount_category": {
                        "$ref": "#/components/schemas/AmountCategory5"
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory4"
                            }
                        ]
                    },
                    "is_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "material_config": {
                        "title": "One Config has One Material.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialConfig"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem5"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material8"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield19"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FaultPlanitem3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem3"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem5"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase5"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem5"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosterType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Name (unique)",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Translation slug",
                        "type": "string"
                    },
                    "slug_short": {
                        "type": "string"
                    },
                    "hex_color": {
                        "title": "Background color of event",
                        "type": "string"
                    },
                    "is_full_day": {
                        "title": "Event is full day event (vacation, sickness)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_background": {
                        "title": "Event is visible only for information purposes (project, partial workload, repair)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_planitem": {
                        "title": "Planitem event",
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence3": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker18"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Fileitem": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#fileitems as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Security by obscurity",
                        "type": "integer"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FaultitemPicture2": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "fileitem": {
                        "$ref": "#/components/schemas/Fileitem"
                    }
                },
                "type": "object"
            },
            "Workdone2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker18"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype13"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility10"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility10"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility10"
                    }
                },
                "type": "object"
            },
            "Worker19": {
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "color": {
                        "type": "string"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department26"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup"
                        }
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace12"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department26": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department26"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace12": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department26"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Customer20": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson21"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield20"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department26"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson21": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer20"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield20": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory7"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer20"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department26"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility11": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType4"
                            }
                        ]
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield20"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer20"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson21"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department26"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype14": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department26"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionCase6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enginehours": {
                        "type": "integer",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "integer",
                        "default": 0
                    },
                    "supervisor": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate2"
                    },
                    "status": {
                        "title": "Inspection Status",
                        "description": "Status values:\n0 - new (planned) status\n1 - inspection soon ( in 500 km OR 50 h OR 10 days )\n2 - inspection time (km, enginehour) arrived\n3 - inspection in progress\n4 - inspection closed with errors\n5 - inspection closed with great success\n6 - pre-usage checklist filled",
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Faultitem4": {
                "properties": {
                    "rowclass": {
                        "type": "string"
                    },
                    "fault_status": {
                        "type": "string"
                    },
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "faultitem_consumer_class": {
                        "title": "Faultitem Consumer Class",
                        "type": "string"
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fault_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fault_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "resolved_at_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "resolved_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker19"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility11"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype14"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "outer_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase6"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fault_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultPlanitem4"
                        }
                    },
                    "severity": {
                        "type": "integer",
                        "default": 2
                    },
                    "fault_reporting_location": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/DeviceLocation"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "faultitem_pictures": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultitemPicture"
                        }
                    },
                    "workdone": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workdone3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_uuid": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "maintenance_worker": {
                        "title": "Person responsible for repairing",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker19"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "planned_start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "ProjectWorker3": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker19"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "ProjectWorktype3": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype14"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "ProjectFacility3": {
                "properties": {
                    "resource": {
                        "title": "Get Resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility11"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Project5": {
                "properties": {
                    "planned_work_hours": {
                        "type": "number",
                        "format": "double"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_work_seconds": {
                        "type": "integer"
                    },
                    "planned_budget": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "project_workers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorker3"
                        }
                    },
                    "project_worktypes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorktype3"
                        }
                    },
                    "project_facilities": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectFacility3"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department26"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Planitem6": {
                "properties": {
                    "is_group_plan": {
                        "type": "boolean"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype14"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility11"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility11"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield20"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount5"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project5"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage4"
                        }
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork4"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer20"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer20"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson21"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem4"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem4"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus"
                            }
                        ]
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod"
                    },
                    "color": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType2"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence4"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department26"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility11"
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem6"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material8"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield20"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FaultPlanitem4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem4"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem6"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase6"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem6"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence4": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker19"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workdone3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker19"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype14"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility11"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility11"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility11"
                    }
                },
                "type": "object"
            },
            "CropType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CropPeriod4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "PriaPayee3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "regnr": {
                        "type": "string"
                    },
                    "display_color": {
                        "type": "string"
                    },
                    "pria_uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Crop4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "base_name": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "hex_color": {
                        "type": "string"
                    },
                    "master_crop": {
                        "title": "Remaining crop after crops join",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Crop4"
                            }
                        ]
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "crop_type": {
                        "title": "Crop Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropType2"
                            }
                        ]
                    },
                    "moisture_dry": {
                        "title": "Moisture content of dry (elevator) crop (usually 13% or below)",
                        "type": "integer",
                        "default": 13
                    }
                },
                "type": "object"
            },
            "AgreementType3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AgreementType translation slug.",
                        "type": "string"
                    },
                    "pria_code": {
                        "title": "Pria \"poldKasutusOigus\" code.",
                        "description": "KR\t\tkirjalik rendileping\nO\t\tomandis\nSR\t\tsuuline rendileping\nKV\t\tkasutusvaldus\nM\t\tmuu",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CropPurposeType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "translation slug.",
                        "type": "string"
                    },
                    "pria_code": {
                        "title": "Pria \"pollukultuurOtstarve\" code.",
                        "description": "TA\tteraks v\u00f5i avamaal\nKAR\tkarjatatav rohumaa\nEI\tei hoolda\nK\tkatmikalal\nHM\thaljasmassiks",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AgrifieldUsageType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "translation slug.",
                        "type": "string"
                    },
                    "pria_code": {
                        "title": "Pria \"maakasutusTyyp\" code.",
                        "description": "P\tP\u00f5llumaa\tCrops\nPR\tP\u00fcsirohumaa\tPermanent grassland\nPK\tP\u00fcsikultuurid\tPermanent crops\nTAR\tTagasirajatud p\u00fcsirohumaa\tRestored grassland\nM\tMustkesa\tBare fallow\nKV\tKarjatamine v\u00e4ljaspool p\u00f5llumajandusmaad\tRough grazings\nTPR\tKeskkonnatundlik p\u00fcsirohumaa\tEnvironmentally sensitive permanent grassland\n\nPN_  Puisniit    Wooded meadow\nKN_  Kadakatega niit   Juniper meadow\nPK_  Puiskarjamaa   Wooded pasture\nMN_  Muu niit   Other meadow",
                        "type": "string"
                    },
                    "is_meadow_type": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "CropLayerType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AgreementType translation slug.",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "HarvestType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AgreementType translation slug.",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AgrifieldData": {
                "properties": {
                    "planned_yield": {
                        "type": "integer"
                    },
                    "real_yield": {
                        "type": "number",
                        "format": "double"
                    },
                    "pria_sync_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "cultivated_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "water_protection_area_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "field_usage_description": {
                        "type": "string"
                    },
                    "start_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod4"
                    },
                    "pria_payee": {
                        "$ref": "#/components/schemas/PriaPayee3"
                    },
                    "crop": {
                        "$ref": "#/components/schemas/Crop4"
                    },
                    "crop_variety": {
                        "type": "string"
                    },
                    "origin_authority": {
                        "type": "string"
                    },
                    "origin_authority_id": {
                        "type": "string"
                    },
                    "agreement_type": {
                        "title": "e-Pria poldKasutusOigus",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AgreementType3"
                            }
                        ]
                    },
                    "crop_purpose_type": {
                        "title": "e-Pria pollukultuurOtstarve",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropPurposeType"
                            }
                        ]
                    },
                    "agrifield_usage_type": {
                        "title": "e-Pria maakasutusTyyp",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AgrifieldUsageType"
                            }
                        ]
                    },
                    "crop_layer_type": {
                        "title": "CropLayerType",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropLayerType"
                            }
                        ]
                    },
                    "harvest_type": {
                        "title": "Harvest Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/HarvestType"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AgrifieldFertilizingPlan": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "crop_type": {
                        "title": "Crop Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropType2"
                            }
                        ]
                    },
                    "planned_yield": {
                        "title": "Planned yield (saagikus) t/ha",
                        "type": "integer",
                        "default": 0
                    },
                    "wet_yield": {
                        "title": "Harvested crop wet yield (saagikus) t/ha, amountWet/area",
                        "type": "number",
                        "format": "float"
                    },
                    "real_yield": {
                        "title": "Dry clean yield (saagikus) t/ha, amountDry/area",
                        "type": "number",
                        "format": "float"
                    },
                    "moisture_wet": {
                        "title": "Harvested crop (wet) moisture percent",
                        "type": "integer"
                    },
                    "moisture_dry": {
                        "title": "Stored (dry) crop moisture percent",
                        "type": "integer"
                    },
                    "impurity_wet": {
                        "title": "Harvested crop (wet) impurity percent",
                        "type": "integer"
                    },
                    "impurity_dry": {
                        "title": "Stored crop (dry) impurity percent",
                        "type": "integer"
                    },
                    "is_manual_real_yield": {
                        "type": "boolean",
                        "default": false
                    },
                    "n_opt": {
                        "type": "string"
                    },
                    "p_opt": {
                        "type": "string"
                    },
                    "k_opt": {
                        "type": "string"
                    },
                    "n_level": {
                        "type": "integer"
                    },
                    "p_level": {
                        "type": "integer"
                    },
                    "k_level": {
                        "type": "integer"
                    },
                    "manure": {
                        "title": "Klassifikaatorile vastav yldtoode",
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield_data": {
                        "$ref": "#/components/schemas/AgrifieldData"
                    },
                    "norm_n": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "norm_p": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "norm_k": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "autumn_seed": {
                        "type": "boolean",
                        "default": false
                    },
                    "adjustment_of_n": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "adjustment_of_p": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "adjustment_of_k": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "manure_amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "manure_provided_n": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "manure_provided_p": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "manure_provided_k": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "deficit_n": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "deficit_p": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "deficit_k": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "prev_year_n": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "prev_year_p": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "prev_year_k": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "next_year_n": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "next_year_p": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "next_year_k": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "pria_sync_time": {
                        "title": "Time when yield was received by Pria",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "DeviceLocation2": {
                "type": "object"
            },
            "DocumentType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "usage_id": {
                        "type": "integer"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department27": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department27"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker20": {
                "properties": {
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department27"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "TerakeObjectType3": {
                "properties": {
                    "code": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Fileitem2": {
                "properties": {
                    "id": {
                        "title": "Security by obscurity",
                        "type": "integer"
                    },
                    "original_name": {
                        "type": "string"
                    },
                    "file_extension": {
                        "type": "string"
                    },
                    "mime_type": {
                        "type": "string"
                    },
                    "is_uploaded": {
                        "type": "boolean",
                        "default": false
                    },
                    "category_key": {
                        "type": "string"
                    },
                    "file_size": {
                        "type": "integer",
                        "default": 0
                    },
                    "device_uuid": {
                        "type": "string"
                    },
                    "created_at_location": {
                        "$ref": "#/components/schemas/DeviceLocation2"
                    },
                    "document_type": {
                        "$ref": "#/components/schemas/DocumentType"
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker20"
                    },
                    "object_code": {
                        "title": "Related primary terake object type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TerakeObjectType3"
                            }
                        ]
                    },
                    "object_id": {
                        "title": "Related primary Terake object id",
                        "type": "integer"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worker21": {
                "properties": {
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department28"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker21"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker21"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department28": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker21"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker21"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department28"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility12": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker21"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker21"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department28"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Fuel": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker21"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker21"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Identificator": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Nick name of card, like \"John's white door card\"",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker21"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker21"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FuelFilling": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "facility": {
                        "$ref": "#/components/schemas/Facility12"
                    },
                    "filling_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker21"
                    },
                    "fuel": {
                        "$ref": "#/components/schemas/Fuel"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "balance_amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "motohours": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "price_net": {
                        "type": "number",
                        "format": "float"
                    },
                    "price_tax": {
                        "type": "number",
                        "format": "float"
                    },
                    "price_total": {
                        "type": "number",
                        "format": "float"
                    },
                    "identificator": {
                        "$ref": "#/components/schemas/Identificator"
                    },
                    "outer_id": {
                        "title": "Transaction Id in external system.",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker21"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker21"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Customer21": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson22"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield21"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department29"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker22": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department29"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace13"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department29": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department29"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace13": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department29"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "CustomerPerson22": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer21"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield21": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory7"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer21"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department29"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility13": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType4"
                            }
                        ]
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield21"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer21"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson22"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department29"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "FuelArchive": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Fuel2": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#fuels as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "outer_id": {
                        "title": "ID in external system",
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FuelArchive"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workdone4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "IdentificatorType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "Currency slug",
                        "type": "string"
                    },
                    "is_personal_id": {
                        "title": "True if is used for identifying Person (GoogleId, FacebookId, Credit Card, Personified Green Card, Personified Alexela Card, RFID Tag, NFC tag, Etc)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_facility_id": {
                        "title": "True if is used for identifying Facility (QR Code, Bar Code number, Alexela Card assigned to certain Facility)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_fuel_card": {
                        "title": "True if is used for identifying Fuel Filling (Alexela Card)",
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Identificator2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Nick name of card, like \"John's white door card\"",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "facility": {
                        "$ref": "#/components/schemas/Facility13"
                    },
                    "identificator_type": {
                        "$ref": "#/components/schemas/IdentificatorType"
                    },
                    "outer_id": {
                        "title": "Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string",
                        "default": ""
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FuelFilling2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "facility": {
                        "$ref": "#/components/schemas/Facility13"
                    },
                    "filling_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "fuel": {
                        "$ref": "#/components/schemas/Fuel2"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "balance_amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "motohours": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "workdone": {
                        "$ref": "#/components/schemas/Workdone4"
                    },
                    "price_net": {
                        "type": "number",
                        "format": "float"
                    },
                    "price_tax": {
                        "type": "number",
                        "format": "float"
                    },
                    "price_total": {
                        "type": "number",
                        "format": "float"
                    },
                    "identificator": {
                        "$ref": "#/components/schemas/Identificator2"
                    },
                    "outer_id": {
                        "title": "Transaction Id in external system.",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker22"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility14": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Fuel3": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Identificator3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Nick name of card, like \"John's white door card\"",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FuelFilling3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "facility": {
                        "$ref": "#/components/schemas/Facility14"
                    },
                    "filling_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker"
                    },
                    "fuel": {
                        "$ref": "#/components/schemas/Fuel3"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "balance_amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "motohours": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "price_net": {
                        "type": "number",
                        "format": "float"
                    },
                    "price_tax": {
                        "type": "number",
                        "format": "float"
                    },
                    "price_total": {
                        "type": "number",
                        "format": "float"
                    },
                    "identificator": {
                        "$ref": "#/components/schemas/Identificator3"
                    },
                    "outer_id": {
                        "title": "Transaction Id in external system.",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "GeoItem": {
                "properties": {
                    "geojson": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "simplified_geojson": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "centroid_point": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "number",
                            "format": "float"
                        }
                    },
                    "centroid_lat": {
                        "type": "number",
                        "format": "float"
                    },
                    "centroid_lng": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "AgrifieldData2": {
                "properties": {
                    "geo_item": {
                        "$ref": "#/components/schemas/GeoItem"
                    }
                },
                "type": "object"
            },
            "GeoItem2": {
                "properties": {
                    "simplified_geojson": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "centroid_point": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "number",
                            "format": "float"
                        }
                    }
                },
                "type": "object"
            },
            "Agrifield22": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "geo_item": {
                        "$ref": "#/components/schemas/GeoItem2"
                    }
                },
                "type": "object"
            },
            "DeviceLocation3": {
                "properties": {
                    "device_uuid": {
                        "type": "string",
                        "default": ""
                    },
                    "gps_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "latitude": {
                        "title": "Doctrine hydrates a decimal as a string (\"58.36494\"); serialized and read as a float.",
                        "type": "number",
                        "format": "float",
                        "default": "0.00000"
                    },
                    "longitude": {
                        "type": "number",
                        "format": "float",
                        "default": "0.00000"
                    },
                    "accuracy": {
                        "title": "Horizontal accuracy radius in metres as the device reported it; null when it did not.",
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "Department30": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department30"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department30"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Crop5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "base_name": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "hex_color": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Customer22": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department30"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department30"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield23": {
                "properties": {
                    "__field_number_sortable": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department30"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "water_protection_area_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "field_usage_description": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory4"
                    },
                    "crop": {
                        "$ref": "#/components/schemas/Crop5"
                    },
                    "crop_variety": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer22"
                    },
                    "location_area": {
                        "$ref": "#/components/schemas/LocationArea2"
                    },
                    "is_water_protection_active": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department30"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AnimalType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "pria_code": {
                        "title": "Pria code.",
                        "description": "PIIMALEHM\t\t        Piimalehm\nYLE_24K_LEHM_VEIS\t\t\u00dcle 24 kuu vanune ammlehm ja lihaveis\nKUNI_6K_LEHMVASIKAS\t\tKuni kuue kuu vanune lehmvasikas\nKUNI_6K_PULLVASIKAS\t\tKuni kuue kuu vanune pullvasikas\nYLE_6_LEHMMULLIKAS\t\tLehmmullikas alates kuue kuu vanusest kuni poegimiseni\nYLE_6_PULLMULLIKAS\t\tPullmullikas alates kuue kuu vanusest kuni realiseerimiseni\nLAMMAS_KUNI_1A_TALLEGA\tLammas koos kuni \u00fcheaastase tallega, muu lammas\nKITS_KUNI_1A_TALLEGA\t\tKits koos kuni \u00fcheaastase tallega, muu kits\nHOBUNE_KUNI_6K_VARSAGA\tHobune koos kuni kuuekuuse varsaga, muu hobune",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Herding": {
                "properties": {
                    "days_in_period": {
                        "type": "integer"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "total_n": {
                        "title": "Total added element N in kg, summed over all fertilizing herding caches.",
                        "type": "number",
                        "format": "float"
                    },
                    "total_p": {
                        "title": "Total added element P in kg, summed over all fertilizing herding caches.",
                        "type": "number",
                        "format": "float"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield23"
                    },
                    "animal_type": {
                        "$ref": "#/components/schemas/AnimalType"
                    },
                    "start_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "end_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "herd_size": {
                        "type": "integer",
                        "default": 0
                    },
                    "year0_percent": {
                        "type": "integer",
                        "default": 100
                    },
                    "year1_percent": {
                        "type": "integer",
                        "default": 0
                    },
                    "intensity_percent": {
                        "type": "integer",
                        "default": 100
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "hectares_served": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "pria_sync_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pria_result": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department31": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department31"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker23": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department31"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker23"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup3"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace14"
                        }
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Workplace14": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department31"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession3"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Customer23": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson23"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield24"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department31"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson23": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer23"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agrifield24": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory3"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer23"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department31"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility15": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType"
                            }
                        ]
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield24"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer23"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson23"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department31"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "IdentificatorType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "Currency slug",
                        "type": "string"
                    },
                    "is_personal_id": {
                        "title": "True if is used for identifying Person (GoogleId, FacebookId, Credit Card, Personified Green Card, Personified Alexela Card, RFID Tag, NFC tag, Etc)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_facility_id": {
                        "title": "True if is used for identifying Facility (QR Code, Bar Code number, Alexela Card assigned to certain Facility)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_fuel_card": {
                        "title": "True if is used for identifying Fuel Filling (Alexela Card)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Identificator4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Nick name of card, like \"John's white door card\"",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker23"
                    },
                    "facility": {
                        "$ref": "#/components/schemas/Facility15"
                    },
                    "identificator_type": {
                        "$ref": "#/components/schemas/IdentificatorType2"
                    },
                    "outer_id": {
                        "title": "Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string",
                        "default": ""
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Worker24": {
                "type": "object"
            },
            "InspectionCaseConsumer": {
                "type": "object"
            },
            "InspectionCaseRelation": {
                "type": "object"
            },
            "Worker25": {
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionTemplate3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_type": {
                        "$ref": "#/components/schemas/InspectionType"
                    },
                    "inspection_master_template": {
                        "$ref": "#/components/schemas/InspectionMasterTemplate3"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionMasterTemplate3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "inspection_templates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionTemplate3"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionTask2": {
                "properties": {
                    "id": {
                        "title": "Describes Individual Task or Checkup needed to perform during each Inspection\nSeparate InspectionMasterTemplates have separate InspectionTasks\nInspetionTasks are combined in help of InspectionTemplateItem into InspectionTemplates\n(which together define, what tasks are performed when)",
                        "type": "integer"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "short_desc": {
                        "title": "Maintained part name or description",
                        "type": "string"
                    },
                    "long_desc": {
                        "title": "Maintenance content / Tegevuse sisu",
                        "type": "string"
                    },
                    "action_desc": {
                        "title": "Comment / T\u00e4psustus",
                        "type": "string"
                    },
                    "display_order": {
                        "type": "integer",
                        "default": 0
                    },
                    "fullname": {
                        "title": "InspectionTask fullname, Utf8 string 1000 chars",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCase7": {
                "properties": {
                    "total_inspection_cases": {
                        "type": "integer"
                    },
                    "correct_inspection_cases": {
                        "type": "integer"
                    },
                    "notcorrect_inspection_cases": {
                        "type": "integer"
                    },
                    "unhandled_inspection_cases": {
                        "type": "integer"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "repair_status": {
                        "type": "string"
                    },
                    "consumer": {
                        "title": "InspectionCase Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCaseConsumer"
                            }
                        ]
                    },
                    "consumer_class": {
                        "title": "InspectionCase Consumer Class",
                        "type": "string"
                    },
                    "inspection_case_relation": {
                        "$ref": "#/components/schemas/InspectionCaseRelation"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enginehours": {
                        "type": "integer",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "integer",
                        "default": 0
                    },
                    "supervisor": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "inspector": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate3"
                    },
                    "approved_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "input_finished": {
                        "type": "boolean",
                        "default": false
                    },
                    "input_finished_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "inspection_case_items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionCaseItem3"
                        }
                    },
                    "planned_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "inspection_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionPlanitem5"
                        }
                    },
                    "workdone": {
                        "$ref": "#/components/schemas/Workdone5"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem5"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCaseItem3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_task": {
                        "$ref": "#/components/schemas/InspectionTask2"
                    },
                    "is_handled": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_in_order": {
                        "type": "boolean",
                        "default": false
                    },
                    "description": {
                        "type": "string"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase7"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "validate_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialInspectionCaseItemUsage"
                        }
                    },
                    "lifespan_logs": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPartLifespanLog3"
                        }
                    },
                    "inspection_case_item_files": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionCaseItemFile"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Material9": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory4"
                            }
                        ]
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory3"
                            }
                        ]
                    },
                    "batch_number": {
                        "type": "string"
                    },
                    "cost_per_unit": {
                        "title": "Net cost (Purchase price)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "price_per_unit": {
                        "title": "Sale price",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "material_lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialLifespan"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "FacilityPartLifespan2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType"
                    },
                    "initial_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "warning_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "end_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "current_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityPart6": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "material": {
                        "title": "Material",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material9"
                            }
                        ]
                    },
                    "amount": {
                        "title": "MAterial amount",
                        "type": "number",
                        "format": "float"
                    },
                    "replace_inspection_task": {
                        "title": "Part Replacement Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask2"
                            }
                        ]
                    },
                    "check_inspection_task": {
                        "title": "Part Check Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask2"
                            }
                        ]
                    },
                    "last_replace_inspection_case_id": {
                        "title": "Part Last Replace Inspection Case Item Id",
                        "description": "This is done in this way to avoid circular reference",
                        "type": "integer",
                        "default": 0
                    },
                    "last_check_inspection_case_id": {
                        "title": "Part Last Check Inspection Case Item Id",
                        "description": "This is done in this way to avoid circular reference",
                        "type": "integer",
                        "default": 0
                    },
                    "lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPartLifespan2"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialInspectionCaseItemUsage": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case_item": {
                        "$ref": "#/components/schemas/InspectionCaseItem3"
                    },
                    "facility_part": {
                        "$ref": "#/components/schemas/FacilityPart6"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material9"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityPartLifespanLog3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "facility_part": {
                        "$ref": "#/components/schemas/FacilityPart6"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType"
                    },
                    "inspection_case_item": {
                        "$ref": "#/components/schemas/InspectionCaseItem3"
                    },
                    "current_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCaseItemFile": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype15": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield25": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "inspection_schedule": {
                        "title": "Inspection schedule",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionMasterTemplate3"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer24": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson24": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer24"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility16": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "responsible_worker": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "maintenance_worker": {
                        "title": "Person responsible for maintenance",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker25"
                            }
                        ]
                    },
                    "inspection_schedule": {
                        "title": "Inspection schedule",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionMasterTemplate3"
                            }
                        ]
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield25"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer24"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson24"
                            }
                        ]
                    },
                    "parts": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPart6"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Project6": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Planitem7": {
                "properties": {
                    "is_group_plan": {
                        "type": "boolean"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype15"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility16"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility16"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield25"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount4"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project6"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage5"
                        }
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork4"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer24"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer24"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson24"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem5"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem5"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus"
                            }
                        ]
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod3"
                    },
                    "color": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence5"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility16"
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem7"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material9"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield25"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FaultPlanitem5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem5"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem7"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Faultitem5": {
                "properties": {
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility16"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype15"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase7"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fault_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultPlanitem5"
                        }
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase7"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem7"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence5": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker25"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workdone5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility16"
                    }
                },
                "type": "object"
            },
            "Worker26": {
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionTemplate4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_type": {
                        "$ref": "#/components/schemas/InspectionType"
                    },
                    "inspection_master_template": {
                        "$ref": "#/components/schemas/InspectionMasterTemplate4"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionMasterTemplate4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "inspection_templates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionTemplate4"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCase8": {
                "properties": {
                    "total_inspection_cases": {
                        "type": "integer"
                    },
                    "correct_inspection_cases": {
                        "type": "integer"
                    },
                    "notcorrect_inspection_cases": {
                        "type": "integer"
                    },
                    "unhandled_inspection_cases": {
                        "type": "integer"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "repair_status": {
                        "type": "string"
                    },
                    "consumer": {
                        "title": "InspectionCase Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCaseConsumer"
                            }
                        ]
                    },
                    "consumer_class": {
                        "title": "InspectionCase Consumer Class",
                        "type": "string"
                    },
                    "inspection_case_relation": {
                        "$ref": "#/components/schemas/InspectionCaseRelation"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enginehours": {
                        "type": "integer",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "integer",
                        "default": 0
                    },
                    "supervisor": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "inspector": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate4"
                    },
                    "approved_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "input_finished": {
                        "type": "boolean",
                        "default": false
                    },
                    "input_finished_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "inspection_case_items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionCaseItem4"
                        }
                    },
                    "planned_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "inspection_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionPlanitem6"
                        }
                    },
                    "workdone": {
                        "$ref": "#/components/schemas/Workdone6"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem6"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialInspectionCaseItemUsage2": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FacilityPartLifespanLog4": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCaseItem4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_task": {
                        "$ref": "#/components/schemas/InspectionTask2"
                    },
                    "is_handled": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_in_order": {
                        "type": "boolean",
                        "default": false
                    },
                    "description": {
                        "type": "string"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase8"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "validate_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialInspectionCaseItemUsage2"
                        }
                    },
                    "lifespan_logs": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPartLifespanLog4"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype16": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield26": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "inspection_schedule": {
                        "title": "Inspection schedule",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionMasterTemplate4"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer25": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson25": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer25"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility17": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "responsible_worker": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "maintenance_worker": {
                        "title": "Person responsible for maintenance",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker26"
                            }
                        ]
                    },
                    "inspection_schedule": {
                        "title": "Inspection schedule",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionMasterTemplate4"
                            }
                        ]
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield26"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer25"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson25"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Project7": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Planitem8": {
                "properties": {
                    "is_group_plan": {
                        "type": "boolean"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype16"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility17"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility17"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield26"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount4"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project7"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage6"
                        }
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork4"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer25"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer25"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson25"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem6"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem6"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus"
                            }
                        ]
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod3"
                    },
                    "color": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence6"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility17"
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem8"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material7"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield26"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FaultPlanitem6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem6"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem8"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Faultitem6": {
                "properties": {
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility17"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype16"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase8"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fault_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultPlanitem6"
                        }
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase8"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem8"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence6": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker26"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workdone6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility17"
                    }
                },
                "type": "object"
            },
            "Department32": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department32"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department32"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker27": {
                "properties": {
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department32"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department32"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "user": {
                        "$ref": "#/components/schemas/User"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionTemplate5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_type": {
                        "$ref": "#/components/schemas/InspectionType"
                    },
                    "inspection_master_template": {
                        "$ref": "#/components/schemas/InspectionMasterTemplate5"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionMasterTemplate5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "inspection_templates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionTemplate5"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCase9": {
                "properties": {
                    "total_inspection_cases": {
                        "type": "integer"
                    },
                    "correct_inspection_cases": {
                        "type": "integer"
                    },
                    "notcorrect_inspection_cases": {
                        "type": "integer"
                    },
                    "unhandled_inspection_cases": {
                        "type": "integer"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "repair_status": {
                        "type": "string"
                    },
                    "consumer": {
                        "title": "InspectionCase Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCaseConsumer"
                            }
                        ]
                    },
                    "consumer_class": {
                        "title": "InspectionCase Consumer Class",
                        "type": "string"
                    },
                    "inspection_case_relation": {
                        "$ref": "#/components/schemas/InspectionCaseRelation"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enginehours": {
                        "type": "integer",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "integer",
                        "default": 0
                    },
                    "supervisor": {
                        "$ref": "#/components/schemas/Worker27"
                    },
                    "inspector": {
                        "$ref": "#/components/schemas/Worker27"
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "$ref": "#/components/schemas/Worker27"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate5"
                    },
                    "approved_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "input_finished": {
                        "type": "boolean",
                        "default": false
                    },
                    "input_finished_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "inspection_case_items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionCaseItem5"
                        }
                    },
                    "planned_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "inspection_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionPlanitem7"
                        }
                    },
                    "workdone": {
                        "$ref": "#/components/schemas/Workdone7"
                    },
                    "status": {
                        "title": "Inspection Status",
                        "description": "Status values:\n0 - new (planned) status\n1 - inspection soon ( in 500 km OR 50 h OR 10 days )\n2 - inspection time (km, enginehour) arrived\n3 - inspection in progress\n4 - inspection closed with errors\n5 - inspection closed with great success\n6 - pre-usage checklist filled",
                        "type": "integer",
                        "default": 0
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem7"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCaseItem5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_task": {
                        "$ref": "#/components/schemas/InspectionTask2"
                    },
                    "is_handled": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_in_order": {
                        "type": "boolean",
                        "default": false
                    },
                    "description": {
                        "type": "string"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase9"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker27"
                    },
                    "validate_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialInspectionCaseItemUsage2"
                        }
                    },
                    "lifespan_logs": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPartLifespanLog4"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Planitem9": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department32"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage7"
                        }
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department32"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem9"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase9"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem9"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Customer26": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department32"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department32"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workdone7": {
                "properties": {
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "duration_as_text": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker27"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "approving_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "is_mobile_initiated": {
                        "type": "boolean"
                    },
                    "is_paused": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_customer": {
                        "type": "boolean",
                        "default": false
                    },
                    "customer": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer26"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "description_extended": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_agrifield_finished": {
                        "type": "boolean",
                        "default": true
                    },
                    "is_unfinished": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_invoiced": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_manual_entry": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_created": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Faultitem7": {
                "properties": {
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fault_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fault_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "resolved_at_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "resolved_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "severity": {
                        "type": "integer",
                        "default": 2
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionTask3": {
                "properties": {
                    "id": {
                        "title": "Describes Individual Task or Checkup needed to perform during each Inspection\nSeparate InspectionMasterTemplates have separate InspectionTasks\nInspetionTasks are combined in help of InspectionTemplateItem into InspectionTemplates\n(which together define, what tasks are performed when)",
                        "type": "integer"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "short_desc": {
                        "title": "Maintained part name or description",
                        "type": "string"
                    },
                    "long_desc": {
                        "title": "Maintenance content / Tegevuse sisu",
                        "type": "string"
                    },
                    "action_desc": {
                        "title": "Comment / T\u00e4psustus",
                        "type": "string"
                    },
                    "display_order": {
                        "type": "integer",
                        "default": 0
                    },
                    "fullname": {
                        "title": "InspectionTask fullname, Utf8 string 1000 chars",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "enginehours": {
                        "type": "integer",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "integer",
                        "default": 0
                    },
                    "days": {
                        "type": "integer",
                        "default": 0
                    },
                    "enginehours_alert": {
                        "type": "integer",
                        "default": 0
                    },
                    "kilometers_alert": {
                        "type": "integer",
                        "default": 0
                    },
                    "days_alert": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_every_use_check": {
                        "title": "True if frequency is for every use",
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "InspectionTemplate6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_type": {
                        "$ref": "#/components/schemas/InspectionType2"
                    },
                    "inspection_master_template": {
                        "$ref": "#/components/schemas/InspectionMasterTemplate6"
                    }
                },
                "type": "object"
            },
            "InspectionMasterTemplate6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "inspection_templates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionTemplate6"
                        }
                    }
                },
                "type": "object"
            },
            "InspectionCaseItem6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_task": {
                        "$ref": "#/components/schemas/InspectionTask3"
                    },
                    "is_handled": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_in_order": {
                        "type": "boolean",
                        "default": false
                    },
                    "description": {
                        "type": "string"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase10"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker"
                    },
                    "validate_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialInspectionCaseItemUsage3"
                        }
                    },
                    "lifespan_logs": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPartLifespanLog5"
                        }
                    },
                    "inspection_case_item_files": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionCaseItemFile2"
                        }
                    }
                },
                "type": "object"
            },
            "InspectionCase10": {
                "properties": {
                    "total_inspection_cases": {
                        "type": "integer"
                    },
                    "correct_inspection_cases": {
                        "type": "integer"
                    },
                    "notcorrect_inspection_cases": {
                        "type": "integer"
                    },
                    "unhandled_inspection_cases": {
                        "type": "integer"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "repair_status": {
                        "type": "string"
                    },
                    "consumer": {
                        "title": "InspectionCase Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCaseConsumer"
                            }
                        ]
                    },
                    "consumer_class": {
                        "title": "InspectionCase Consumer Class",
                        "type": "string"
                    },
                    "inspection_case_relation": {
                        "$ref": "#/components/schemas/InspectionCaseRelation"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "enginehours": {
                        "type": "integer",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "integer",
                        "default": 0
                    },
                    "supervisor": {
                        "$ref": "#/components/schemas/Worker"
                    },
                    "inspector": {
                        "$ref": "#/components/schemas/Worker"
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "$ref": "#/components/schemas/Worker"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate6"
                    },
                    "approved_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "input_finished": {
                        "type": "boolean",
                        "default": false
                    },
                    "input_finished_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "inspection_case_items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionCaseItem6"
                        }
                    },
                    "planned_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "inspection_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionPlanitem8"
                        }
                    },
                    "workdone": {
                        "$ref": "#/components/schemas/Workdone8"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem8"
                    }
                },
                "type": "object"
            },
            "Planitem10": {
                "type": "object"
            },
            "InspectionPlanitem8": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase10"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem10"
                    }
                },
                "type": "object"
            },
            "Workdone8": {
                "properties": {
                    "id": {
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "Faultitem8": {
                "type": "object"
            },
            "AmountCategory6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Amount category name",
                        "type": "string"
                    },
                    "slug": {
                        "title": "AmountCategory translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name",
                        "type": "string"
                    },
                    "shortname_slug": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialLifespan2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType2"
                    },
                    "initial_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "warning_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "end_value": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Material10": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory6"
                            }
                        ]
                    },
                    "cost_per_unit": {
                        "title": "Net cost (Purchase price)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "price_per_unit": {
                        "title": "Sale price",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "material_lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialLifespan2"
                        }
                    }
                },
                "type": "object"
            },
            "FacilityPartLifespan3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType2"
                    },
                    "initial_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "warning_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "end_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "current_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "FacilityPart7": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "material": {
                        "title": "Material",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material10"
                            }
                        ]
                    },
                    "amount": {
                        "title": "MAterial amount",
                        "type": "number",
                        "format": "float"
                    },
                    "replace_inspection_task": {
                        "title": "Part Replacement Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask3"
                            }
                        ]
                    },
                    "check_inspection_task": {
                        "title": "Part Check Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask3"
                            }
                        ]
                    },
                    "last_replace_inspection_case_id": {
                        "title": "Part Last Replace Inspection Case Item Id",
                        "description": "This is done in this way to avoid circular reference",
                        "type": "integer",
                        "default": 0
                    },
                    "last_check_inspection_case_id": {
                        "title": "Part Last Check Inspection Case Item Id",
                        "description": "This is done in this way to avoid circular reference",
                        "type": "integer",
                        "default": 0
                    },
                    "lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPartLifespan3"
                        }
                    }
                },
                "type": "object"
            },
            "MaterialInspectionCaseItemUsage3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case_item": {
                        "$ref": "#/components/schemas/InspectionCaseItem6"
                    },
                    "facility_part": {
                        "$ref": "#/components/schemas/FacilityPart7"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material10"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "FacilityPartLifespanLog5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "facility_part": {
                        "$ref": "#/components/schemas/FacilityPart7"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType2"
                    },
                    "inspection_case_item": {
                        "$ref": "#/components/schemas/InspectionCaseItem6"
                    },
                    "current_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "InspectionCaseItemFile2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "InspectionTask4": {
                "properties": {
                    "id": {
                        "title": "Describes Individual Task or Checkup needed to perform during each Inspection\nSeparate InspectionMasterTemplates have separate InspectionTasks\nInspetionTasks are combined in help of InspectionTemplateItem into InspectionTemplates\n(which together define, what tasks are performed when)",
                        "type": "integer"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "short_desc": {
                        "title": "Maintained part name or description",
                        "type": "string"
                    },
                    "long_desc": {
                        "title": "Maintenance content / Tegevuse sisu",
                        "type": "string"
                    },
                    "action_desc": {
                        "title": "Comment / T\u00e4psustus",
                        "type": "string"
                    },
                    "display_order": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "InspectionCase11": {
                "properties": {
                    "id": {
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "InspectionCaseItem7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_task": {
                        "$ref": "#/components/schemas/InspectionTask4"
                    },
                    "is_handled": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_in_order": {
                        "type": "boolean",
                        "default": false
                    },
                    "description": {
                        "type": "string"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase11"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker"
                    },
                    "validate_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialInspectionCaseItemUsage4"
                        }
                    },
                    "lifespan_logs": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPartLifespanLog6"
                        }
                    },
                    "inspection_case_item_files": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionCaseItemFile2"
                        }
                    }
                },
                "type": "object"
            },
            "FacilityPart8": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "material": {
                        "title": "Material",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material10"
                            }
                        ]
                    },
                    "amount": {
                        "title": "MAterial amount",
                        "type": "number",
                        "format": "float"
                    },
                    "replace_inspection_task": {
                        "title": "Part Replacement Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask4"
                            }
                        ]
                    },
                    "check_inspection_task": {
                        "title": "Part Check Task",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionTask4"
                            }
                        ]
                    },
                    "last_replace_inspection_case_id": {
                        "title": "Part Last Replace Inspection Case Item Id",
                        "description": "This is done in this way to avoid circular reference",
                        "type": "integer",
                        "default": 0
                    },
                    "last_check_inspection_case_id": {
                        "title": "Part Last Check Inspection Case Item Id",
                        "description": "This is done in this way to avoid circular reference",
                        "type": "integer",
                        "default": 0
                    },
                    "lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FacilityPartLifespan3"
                        }
                    }
                },
                "type": "object"
            },
            "MaterialInspectionCaseItemUsage4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case_item": {
                        "$ref": "#/components/schemas/InspectionCaseItem7"
                    },
                    "facility_part": {
                        "$ref": "#/components/schemas/FacilityPart8"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material10"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "FacilityPartLifespanLog6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "facility_part": {
                        "$ref": "#/components/schemas/FacilityPart8"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType2"
                    },
                    "inspection_case_item": {
                        "$ref": "#/components/schemas/InspectionCaseItem7"
                    },
                    "current_value": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "InspectionMasterTemplate7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionTask5": {
                "properties": {
                    "id": {
                        "title": "Describes Individual Task or Checkup needed to perform during each Inspection\nSeparate InspectionMasterTemplates have separate InspectionTasks\nInspetionTasks are combined in help of InspectionTemplateItem into InspectionTemplates\n(which together define, what tasks are performed when)",
                        "type": "integer"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "short_desc": {
                        "title": "Maintained part name or description",
                        "type": "string"
                    },
                    "long_desc": {
                        "title": "Maintenance content / Tegevuse sisu",
                        "type": "string"
                    },
                    "action_desc": {
                        "title": "Comment / T\u00e4psustus",
                        "type": "string"
                    },
                    "display_order": {
                        "type": "integer",
                        "default": 0
                    },
                    "inspection_master_template": {
                        "$ref": "#/components/schemas/InspectionMasterTemplate7"
                    },
                    "fullname": {
                        "title": "InspectionTask fullname, Utf8 string 1000 chars",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionTemplate7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_type": {
                        "$ref": "#/components/schemas/InspectionType2"
                    },
                    "inspection_master_template": {
                        "$ref": "#/components/schemas/InspectionMasterTemplate8"
                    }
                },
                "type": "object"
            },
            "InspectionMasterTemplate8": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "inspection_templates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InspectionTemplate7"
                        }
                    }
                },
                "type": "object"
            },
            "IntegrationPartner": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Company8": {
                "properties": {
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department33": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company8"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department33"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker28": {
                "properties": {
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department33"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company8"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Integration": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "integration_partner": {
                        "$ref": "#/components/schemas/IntegrationPartner"
                    },
                    "apikey": {
                        "type": "string"
                    },
                    "secret": {
                        "type": "string"
                    },
                    "apiurl": {
                        "type": "string"
                    },
                    "representative": {
                        "$ref": "#/components/schemas/Worker28"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company8"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker29": {
                "properties": {
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department34"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company8"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker29"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker29"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department34": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company8"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker29"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker29"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department34"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Integration2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "integration_partner": {
                        "$ref": "#/components/schemas/IntegrationPartner"
                    },
                    "apikey": {
                        "type": "string"
                    },
                    "secret": {
                        "type": "string"
                    },
                    "apiurl": {
                        "type": "string"
                    },
                    "representative": {
                        "$ref": "#/components/schemas/Worker29"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker29"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker29"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company8"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department35": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department35"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker30": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department35"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InventoryFacilityLog5": {
                "properties": {
                    "id": {
                        "title": "Inventory Log entry Id in Terake",
                        "type": "integer"
                    },
                    "facility": {
                        "title": "Facility related to Inventory Log entry",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility18"
                            }
                        ]
                    },
                    "worker": {
                        "title": "Worker who registered this entry in Inventory Log",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker30"
                            }
                        ]
                    },
                    "inventory_event_type": {
                        "title": "Inventory Log entry logged Event Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InventoryEventType3"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "QrImage3": {
                "properties": {
                    "qr_text": {
                        "title": "Qr or Barcode content in text format",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Identificator5": {
                "properties": {
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility18": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "is_main_facility": {
                        "title": "True if Facility is main facility",
                        "type": "boolean",
                        "default": false
                    },
                    "is_secondary_facility": {
                        "title": "True if Facility is secondary facility (implement, trailer)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_replaceable": {
                        "title": "True if facility is easily replacable (has big stock)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_maintainable": {
                        "title": "True if facility is maintaineable unit",
                        "type": "boolean",
                        "default": false
                    },
                    "storage_worker": {
                        "title": "Person responsible for storage",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker30"
                            }
                        ]
                    },
                    "last_inventory_log": {
                        "title": "Last (in force) entry in Inventory Log",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InventoryFacilityLog5"
                            }
                        ]
                    },
                    "nfc": {
                        "title": "Facility NFC code",
                        "type": "string"
                    },
                    "qr": {
                        "title": "Facility QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage3"
                            }
                        ]
                    },
                    "identificators": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Identificator5"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department35"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InventoryEventType3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "previous_status": {
                        "$ref": "#/components/schemas/InventoryStatusType"
                    },
                    "next_status": {
                        "$ref": "#/components/schemas/InventoryStatusType"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department36": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department36"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker31": {
                "properties": {
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department36"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department36"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "user": {
                        "$ref": "#/components/schemas/User"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility19": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department36"
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department36"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "JourneyForm": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company3"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker31"
                    },
                    "facility": {
                        "$ref": "#/components/schemas/Facility19"
                    },
                    "sheet_number": {
                        "type": "string"
                    },
                    "region_name": {
                        "type": "string"
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "start_odometer": {
                        "type": "number",
                        "format": "float"
                    },
                    "stop_odometer": {
                        "type": "number",
                        "format": "float"
                    },
                    "start_odometer_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_odometer_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "total_planned_mileage": {
                        "type": "number",
                        "format": "float"
                    },
                    "driver_notes": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype17": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department36"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department36"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "TripRoute": {
                "properties": {
                    "display_name": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company3"
                    },
                    "route_number": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "route_mileage": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Customer27": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department36"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department36"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "ClientManager": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CharterJob": {
                "properties": {
                    "display_name": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company3"
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "from_place_info": {
                        "type": "string"
                    },
                    "to_place_info": {
                        "type": "string"
                    },
                    "route_description": {
                        "type": "string"
                    },
                    "additional": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer27"
                    },
                    "client_manager": {
                        "$ref": "#/components/schemas/ClientManager"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "JourneyFormItem": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "journey_form": {
                        "$ref": "#/components/schemas/JourneyForm"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype17"
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "display_order": {
                        "type": "integer"
                    },
                    "planned_mileage": {
                        "type": "number",
                        "format": "float"
                    },
                    "start_odometer": {
                        "type": "number",
                        "format": "float"
                    },
                    "station_pole_number": {
                        "type": "string"
                    },
                    "trip_route": {
                        "$ref": "#/components/schemas/TripRoute"
                    },
                    "charter_job": {
                        "$ref": "#/components/schemas/CharterJob"
                    },
                    "pre_sold_seats": {
                        "type": "integer",
                        "default": 0
                    },
                    "reported_mileage": {
                        "type": "number",
                        "format": "float"
                    },
                    "route_description": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department37": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department37"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield27": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department37"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "ManureStorage": {
                "properties": {
                    "agrifield_names": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "requested_start_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "requested_end_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "usage_start_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "usage_end_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "lat": {
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "type": "number",
                        "format": "float"
                    },
                    "agrifields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield27"
                        }
                    },
                    "storage_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialCategory5": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material Category name, user defined. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Material Category translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name.",
                        "type": "string"
                    },
                    "is_plant_protection": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material11": {
                "properties": {
                    "_amount": {
                        "type": "number",
                        "format": "double"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Material fullname, calculated value",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "category_name": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory3"
                            }
                        ]
                    },
                    "calc_amount_category": {
                        "$ref": "#/components/schemas/AmountCategory3"
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory5"
                            }
                        ]
                    },
                    "formula_n": {
                        "type": "string"
                    },
                    "formula_p": {
                        "type": "string"
                    },
                    "formula_k": {
                        "type": "string"
                    },
                    "formula_s": {
                        "type": "string"
                    },
                    "formula_mg": {
                        "type": "string"
                    },
                    "formula_ca": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "batch_number": {
                        "type": "string"
                    },
                    "is_coated_seed": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_coating_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "cost_per_unit": {
                        "title": "Net cost (Purchase price)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "price_per_unit": {
                        "title": "Sale price",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialCategoryArchive": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialCategory6": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material Category name, user defined. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Material Category translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name.",
                        "type": "string"
                    },
                    "is_plant_protection": {
                        "type": "boolean",
                        "default": false
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialCategoryArchive"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Crop6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialCertificate": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "MaterialType translation slug.",
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material12": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "name_extended": {
                        "type": "string"
                    },
                    "_amount": {
                        "type": "number",
                        "format": "double"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Material fullname, calculated value",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "category_name": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory5"
                            }
                        ]
                    },
                    "calc_amount_category": {
                        "$ref": "#/components/schemas/AmountCategory5"
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory6"
                            }
                        ]
                    },
                    "crop": {
                        "title": "In case of Seed (Material_category_id = 2), or Harvest (Material_category_id = 13) crop",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Crop6"
                            }
                        ]
                    },
                    "material_certificate": {
                        "title": "Material certificate",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCertificate"
                            }
                        ]
                    },
                    "material_type": {
                        "title": "Material sub-type\n(TKV_MATERJAL, VAETAMISE_MATERJAL/FERT_MATERIAL )",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialType"
                            }
                        ]
                    },
                    "material_second_type": {
                        "title": "Material second sub-type\nvaetiseliik/FERT_TYPE",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialType"
                            }
                        ]
                    },
                    "master_material": {
                        "title": "Master Material\n(nt. taimekaitsevahend PRIA registrist, v\u00e4etis regitrist)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material12"
                            }
                        ]
                    },
                    "formula_n": {
                        "type": "string"
                    },
                    "formula_p": {
                        "type": "string"
                    },
                    "formula_k": {
                        "type": "string"
                    },
                    "formula_s": {
                        "type": "string"
                    },
                    "formula_mg": {
                        "type": "string"
                    },
                    "formula_ca": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "batch_number": {
                        "type": "string"
                    },
                    "material_impact_data": {
                        "$ref": "#/components/schemas/MaterialImpactData"
                    },
                    "seed_coating_data": {
                        "$ref": "#/components/schemas/SeedCoatingData"
                    },
                    "is_coated_seed": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_coating_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_cover_crop": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_undersowing": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "material_config": {
                        "title": "One Config has One Material.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialConfig2"
                            }
                        ]
                    },
                    "cost_per_unit": {
                        "title": "Net cost (Purchase price)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "price_per_unit": {
                        "title": "Sale price",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialArchive"
                        }
                    },
                    "material_lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialLifespan3"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialImpactData": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "year0_percent_n": {
                        "type": "integer",
                        "default": 0
                    },
                    "year1_percent_n": {
                        "type": "integer",
                        "default": 0
                    },
                    "year2_percent_n": {
                        "type": "integer",
                        "default": 0
                    },
                    "year0_percent_p": {
                        "type": "integer",
                        "default": 0
                    },
                    "year1_percent_p": {
                        "type": "integer",
                        "default": 0
                    },
                    "year2_percent_p": {
                        "type": "integer",
                        "default": 0
                    },
                    "year0_percent_k": {
                        "type": "integer",
                        "default": 0
                    },
                    "year1_percent_k": {
                        "type": "integer",
                        "default": 0
                    },
                    "year2_percent_k": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "SeedCoatingData": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "consumption_ratio_per_base_unit": {
                        "type": "number",
                        "format": "float"
                    },
                    "coating_material": {
                        "$ref": "#/components/schemas/Material12"
                    }
                },
                "type": "object"
            },
            "MaterialConfig2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "click_amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "min_seconds_between_clicks": {
                        "type": "integer",
                        "default": 0
                    },
                    "default_amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "default_ratio_per_unit": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "MaterialArchive": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "LifespanTypeArchive": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "LifespanType3": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/LifespanTypeArchive"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialLifespan3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType3"
                    },
                    "initial_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "warning_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "end_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AmountCategory7": {
                "properties": {
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Amount category name",
                        "type": "string"
                    },
                    "shortname": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AmountCategory translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name",
                        "type": "string"
                    },
                    "shortname_slug": {
                        "type": "string"
                    },
                    "is_calculation_base": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Crop7": {
                "properties": {
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialCertificate2": {
                "properties": {
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material13": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "name_extended": {
                        "type": "string"
                    },
                    "_amount": {
                        "type": "number",
                        "format": "double"
                    },
                    "partner_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Material fullname, calculated value",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "category_name": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory7"
                            }
                        ]
                    },
                    "calc_amount_category": {
                        "$ref": "#/components/schemas/AmountCategory7"
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory6"
                            }
                        ]
                    },
                    "crop": {
                        "title": "In case of Seed (Material_category_id = 2), or Harvest (Material_category_id = 13) crop",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Crop7"
                            }
                        ]
                    },
                    "material_certificate": {
                        "title": "Material certificate",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCertificate2"
                            }
                        ]
                    },
                    "material_type": {
                        "title": "Material sub-type\n(TKV_MATERJAL, VAETAMISE_MATERJAL/FERT_MATERIAL )",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialType"
                            }
                        ]
                    },
                    "material_second_type": {
                        "title": "Material second sub-type\nvaetiseliik/FERT_TYPE",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialType"
                            }
                        ]
                    },
                    "master_material": {
                        "title": "Master Material\n(nt. taimekaitsevahend PRIA registrist, v\u00e4etis regitrist)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material13"
                            }
                        ]
                    },
                    "formula_n": {
                        "type": "string"
                    },
                    "formula_p": {
                        "type": "string"
                    },
                    "formula_k": {
                        "type": "string"
                    },
                    "formula_s": {
                        "type": "string"
                    },
                    "formula_mg": {
                        "type": "string"
                    },
                    "formula_ca": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "batch_number": {
                        "type": "string"
                    },
                    "material_impact_data": {
                        "$ref": "#/components/schemas/MaterialImpactData"
                    },
                    "seed_coating_data": {
                        "$ref": "#/components/schemas/SeedCoatingData2"
                    },
                    "is_coated_seed": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_coating_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_cover_crop": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_undersowing": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "material_config": {
                        "title": "One Config has One Material.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialConfig2"
                            }
                        ]
                    },
                    "cost_per_unit": {
                        "title": "Net cost (Purchase price)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "price_per_unit": {
                        "title": "Sale price",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialArchive"
                        }
                    },
                    "material_lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialLifespan3"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "SeedCoatingData2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "consumption_ratio_per_base_unit": {
                        "type": "number",
                        "format": "float"
                    },
                    "coating_material": {
                        "$ref": "#/components/schemas/Material13"
                    }
                },
                "type": "object"
            },
            "MaterialCategoryArchive2": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialCategory7": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material Category name, user defined. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Material Category translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name.",
                        "type": "string"
                    },
                    "is_plant_protection": {
                        "type": "boolean",
                        "default": false
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialCategoryArchive2"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Crop8": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialCertificate3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "MaterialType translation slug.",
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Material14": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "name_extended": {
                        "type": "string"
                    },
                    "_amount": {
                        "type": "number",
                        "format": "double"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Material fullname, calculated value",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "category_name": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory5"
                            }
                        ]
                    },
                    "calc_amount_category": {
                        "$ref": "#/components/schemas/AmountCategory5"
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory7"
                            }
                        ]
                    },
                    "crop": {
                        "title": "In case of Seed (Material_category_id = 2), or Harvest (Material_category_id = 13) crop",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Crop8"
                            }
                        ]
                    },
                    "material_certificate": {
                        "title": "Material certificate",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCertificate3"
                            }
                        ]
                    },
                    "material_type": {
                        "title": "Material sub-type\n(TKV_MATERJAL, VAETAMISE_MATERJAL/FERT_MATERIAL )",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialType2"
                            }
                        ]
                    },
                    "material_second_type": {
                        "title": "Material second sub-type\nvaetiseliik/FERT_TYPE",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialType2"
                            }
                        ]
                    },
                    "master_material": {
                        "title": "Master Material\n(nt. taimekaitsevahend PRIA registrist, v\u00e4etis regitrist)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material14"
                            }
                        ]
                    },
                    "formula_n": {
                        "type": "string"
                    },
                    "formula_p": {
                        "type": "string"
                    },
                    "formula_k": {
                        "type": "string"
                    },
                    "formula_s": {
                        "type": "string"
                    },
                    "formula_mg": {
                        "type": "string"
                    },
                    "formula_ca": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "batch_number": {
                        "type": "string"
                    },
                    "material_impact_data": {
                        "$ref": "#/components/schemas/MaterialImpactData"
                    },
                    "seed_coating_data": {
                        "$ref": "#/components/schemas/SeedCoatingData3"
                    },
                    "is_coated_seed": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_coating_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_cover_crop": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_undersowing": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "material_config": {
                        "title": "One Config has One Material.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialConfig2"
                            }
                        ]
                    },
                    "cost_per_unit": {
                        "title": "Net cost (Purchase price)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "price_per_unit": {
                        "title": "Sale price",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialArchive2"
                        }
                    },
                    "material_lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialLifespan4"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "SeedCoatingData3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "consumption_ratio_per_base_unit": {
                        "type": "number",
                        "format": "float"
                    },
                    "coating_material": {
                        "$ref": "#/components/schemas/Material14"
                    }
                },
                "type": "object"
            },
            "MaterialArchive2": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Company9": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "LifespanTypeArchive2": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "LifespanType4": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company9"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/LifespanTypeArchive2"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialLifespan4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType4"
                    },
                    "initial_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "warning_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "end_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialCategoryArchive3": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company8"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialCategory8": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material Category name, user defined. Required.",
                        "type": "string"
                    },
                    "shortname": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "Material Category translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name.",
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialCategoryArchive3"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company8"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material15": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker32": {
                "properties": {
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department38"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker32"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker32"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department38": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker32"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker32"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department38"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield28": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker32"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker32"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department38"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "DocumentType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "usage_id": {
                        "type": "integer"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker32"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker32"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialInventory": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inventory_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material15"
                    },
                    "storage": {
                        "$ref": "#/components/schemas/Agrifield28"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "is_last": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_cache": {
                        "type": "boolean",
                        "default": false
                    },
                    "document_type": {
                        "$ref": "#/components/schemas/DocumentType2"
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker32"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker32"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MobileFolderType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MobileFolderSlot": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company3"
                    },
                    "mobile_folder_type": {
                        "$ref": "#/components/schemas/MobileFolderType"
                    },
                    "slot_number": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "User2": {
                "properties": {
                    "email_verified": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Worker33": {
                "properties": {
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "user": {
                        "$ref": "#/components/schemas/User2"
                    }
                },
                "type": "object"
            },
            "ModificationLog": {
                "properties": {
                    "action_code": {
                        "type": "string"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "created_by": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker33"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department39": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department39"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department39"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker34": {
                "properties": {
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department39"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department39"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "user": {
                        "$ref": "#/components/schemas/User"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MessageType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "area": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "requires_response": {
                        "type": "boolean",
                        "default": 0
                    },
                    "template_name_txt": {
                        "type": "string"
                    },
                    "template_name_html": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Message2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "from_worker": {
                        "$ref": "#/components/schemas/Worker34"
                    },
                    "message_type": {
                        "$ref": "#/components/schemas/MessageType2"
                    },
                    "body_text": {
                        "type": "string"
                    },
                    "body_text_html": {
                        "type": "string"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "default": 0
                    },
                    "responded_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "deleted_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "status_code": {
                        "type": "string"
                    },
                    "urgency": {
                        "title": "Currently three levels: 0 - none, 100 - informative, 200 - urgent",
                        "type": "integer",
                        "default": 0
                    },
                    "objects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MessageObject2"
                        }
                    },
                    "subject": {
                        "type": "string"
                    },
                    "send_email": {
                        "type": "boolean",
                        "default": false
                    },
                    "valid_until": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "MessageObject2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "message": {
                        "$ref": "#/components/schemas/Message2"
                    },
                    "object_type": {
                        "type": "string"
                    },
                    "object_code": {
                        "$ref": "#/components/schemas/TerakeObjectType"
                    },
                    "object_id": {
                        "type": "integer"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "deleted_at": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Notification2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "to_worker": {
                        "title": "Worker to be notified about message",
                        "description": "Must be serialized with MaxDepth(2) because Terake Workfields (Android native app) goes mad\nwhen Worker object doesnt have assigned inflated Company property",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker34"
                            }
                        ]
                    },
                    "message": {
                        "title": "Message to be sent",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Message2"
                            }
                        ]
                    },
                    "opened_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "deleted_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "status_code": {
                        "type": "string"
                    },
                    "is_silent": {
                        "type": "boolean",
                        "default": false
                    },
                    "emailed_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department40": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department40"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department40"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "TimeTrackingType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worker35": {
                "properties": {
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "name": {
                        "type": "string"
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "color": {
                        "type": "string"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department40"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department40"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType"
                            }
                        ]
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "user": {
                        "$ref": "#/components/schemas/User3"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "User3": {
                "properties": {
                    "email_verified": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype18": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "pria_uuid": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department40"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department40"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer28": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department40"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department40"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson26": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer28"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility20": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department40"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer28"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson26"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department40"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield29": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "color": {
                        "type": "string"
                    },
                    "__field_number_sortable": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department40"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "water_protection_area_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "field_usage_description": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory4"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "crop": {
                        "$ref": "#/components/schemas/Crop2"
                    },
                    "crop_variety": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer28"
                    },
                    "location_area": {
                        "$ref": "#/components/schemas/LocationArea2"
                    },
                    "is_water_protection_active": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department40"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Project8": {
                "properties": {
                    "project_manager_fullname": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department40"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "outer_id": {
                        "title": "Project Id in external system, for example code in Accounting or Project Management system.",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department40"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Planitem11": {
                "properties": {
                    "is_group_plan": {
                        "type": "boolean"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department40"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype18"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility20"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility20"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield29"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project8"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage8"
                        }
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork5"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer28"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer28"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson26"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdones": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workdone9"
                        }
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem7"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem9"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus"
                            }
                        ]
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod"
                    },
                    "color": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence7"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department40"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility20"
                    }
                },
                "type": "object"
            },
            "MaterialCategoryArchive4": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialCategory9": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material Category name, user defined. Required.",
                        "type": "string"
                    },
                    "shortname": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "Material Category translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name.",
                        "type": "string"
                    },
                    "is_plant_protection": {
                        "type": "boolean",
                        "default": false
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialCategoryArchive4"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialCertificate4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialType3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "MaterialType translation slug.",
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material16": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "name_extended": {
                        "type": "string"
                    },
                    "_amount": {
                        "type": "number",
                        "format": "double"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Material fullname, calculated value",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "category_name": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory2"
                            }
                        ]
                    },
                    "calc_amount_category": {
                        "$ref": "#/components/schemas/AmountCategory2"
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory9"
                            }
                        ]
                    },
                    "crop": {
                        "title": "In case of Seed (Material_category_id = 2), or Harvest (Material_category_id = 13) crop",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Crop2"
                            }
                        ]
                    },
                    "material_certificate": {
                        "title": "Material certificate",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCertificate4"
                            }
                        ]
                    },
                    "material_type": {
                        "title": "Material sub-type\n(TKV_MATERJAL, VAETAMISE_MATERJAL/FERT_MATERIAL )",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialType3"
                            }
                        ]
                    },
                    "material_second_type": {
                        "title": "Material second sub-type\nvaetiseliik/FERT_TYPE",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialType3"
                            }
                        ]
                    },
                    "master_material": {
                        "title": "Master Material\n(nt. taimekaitsevahend PRIA registrist, v\u00e4etis regitrist)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material16"
                            }
                        ]
                    },
                    "formula_n": {
                        "type": "string"
                    },
                    "formula_p": {
                        "type": "string"
                    },
                    "formula_k": {
                        "type": "string"
                    },
                    "formula_s": {
                        "type": "string"
                    },
                    "formula_mg": {
                        "type": "string"
                    },
                    "formula_ca": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "batch_number": {
                        "type": "string"
                    },
                    "material_impact_data": {
                        "$ref": "#/components/schemas/MaterialImpactData"
                    },
                    "seed_coating_data": {
                        "$ref": "#/components/schemas/SeedCoatingData4"
                    },
                    "is_coated_seed": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_coating_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_cover_crop": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_undersowing": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "material_config": {
                        "title": "One Config has One Material.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialConfig2"
                            }
                        ]
                    },
                    "cost_per_unit": {
                        "title": "Net cost (Purchase price)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "price_per_unit": {
                        "title": "Sale price",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialArchive3"
                        }
                    },
                    "material_lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialLifespan5"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "SeedCoatingData4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "consumption_ratio_per_base_unit": {
                        "type": "number",
                        "format": "float"
                    },
                    "coating_material": {
                        "$ref": "#/components/schemas/Material16"
                    }
                },
                "type": "object"
            },
            "MaterialArchive3": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "LifespanTypeArchive3": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "LifespanType5": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company3"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/LifespanTypeArchive3"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialLifespan5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType5"
                    },
                    "initial_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "warning_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "end_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage8": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem11"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material16"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield29"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AgrifieldWork5": {
                "properties": {
                    "crop_names": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "crop_names_str": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype18"
                    },
                    "agrifields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield29"
                        }
                    },
                    "agrifields_excluded": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield29"
                        }
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgrifieldGroup2"
                        }
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod"
                    },
                    "agrifield_work_material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgrifieldWorkMaterialUsage4"
                        }
                    },
                    "crop_str": {
                        "title": "Pipe separated crop names, served as the crop_names property through getCropNameArray().",
                        "description": "Legacy and stale: nothing in this codebase calls setCropStr() or writes the crop_str column,\nso whatever a row holds was written by an earlier version. The live value is $crops, which\ngetCropNameString() renders as crop_names_str - the two serialized properties can therefore\ndisagree, and $crops is the one to trust.",
                        "type": "string"
                    },
                    "crops": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Crop2"
                        }
                    },
                    "customers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Customer28"
                        }
                    },
                    "location_areas": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/LocationArea2"
                        }
                    },
                    "pria_payees": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PriaPayee2"
                        }
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "AgrifieldWorkMaterialUsage4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork5"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material16"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "MaterialUsage": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material16"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield29"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_material_report": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_inbound": {
                        "title": "Inbound = production/buy, Outbound = cost/sell",
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Rosteritem": {
                "properties": {
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department40"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department40"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility20"
                    }
                },
                "type": "object"
            },
            "Fuel4": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#fuels as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workdone9": {
                "properties": {
                    "location_history": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pause_minutes": {
                        "type": "integer"
                    },
                    "roster_type": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "paused_from_timestamp": {
                        "type": "integer"
                    },
                    "duration_as_text": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Get company",
                        "description": "This is needed for RestBaseController->hasRightToModify, WorkdoneCreator",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker35"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype18"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility20"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility_start_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "main_facility_stop_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility20"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "agrifield": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield29"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "kilometer_start": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "kilometer_stop": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fuel_consumption": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker35"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "approving_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pria_sync_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "hectares_served": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "is_mobile_initiated": {
                        "type": "boolean"
                    },
                    "start_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "start_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialUsage"
                        }
                    },
                    "cost_account": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CostAccount"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_paused": {
                        "type": "boolean",
                        "default": false
                    },
                    "planitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Planitem11"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "rosteritem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Rosteritem"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fuel_filling": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FuelFilling4"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "faultitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Faultitem9"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase12"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_customer": {
                        "type": "boolean",
                        "default": false
                    },
                    "customer": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer28"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "description_extended": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_agrifield_finished": {
                        "type": "boolean",
                        "default": true
                    },
                    "hectares_displayed": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "yield_measured": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "department": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department40"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "crop_period": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropPeriod"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "project": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Project8"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "device_uuid": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "foreman_info": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneForemanInfo"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_telemetry": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneTelemetry"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_pictures": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkdonePicture"
                        }
                    },
                    "is_unfinished": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_invoiced": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_manual_entry": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_created": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_stopped": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_signed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdone_approval": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneApproval"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_budget": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneBudget"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility20"
                    }
                },
                "type": "object"
            },
            "FuelFilling4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "facility": {
                        "$ref": "#/components/schemas/Facility20"
                    },
                    "filling_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "fuel": {
                        "$ref": "#/components/schemas/Fuel4"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "balance_amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "motohours": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "workdone": {
                        "$ref": "#/components/schemas/Workdone9"
                    },
                    "price_net": {
                        "type": "number",
                        "format": "float"
                    },
                    "price_tax": {
                        "type": "number",
                        "format": "float"
                    },
                    "price_total": {
                        "type": "number",
                        "format": "float"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCase12": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate"
                    },
                    "planned_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "status": {
                        "title": "Inspection Status",
                        "description": "Status values:\n0 - new (planned) status\n1 - inspection soon ( in 500 km OR 50 h OR 10 days )\n2 - inspection time (km, enginehour) arrived\n3 - inspection in progress\n4 - inspection closed with errors\n5 - inspection closed with great success\n6 - pre-usage checklist filled",
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Faultitem9": {
                "properties": {
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fault_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fault_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "resolved_at_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "resolved_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility20"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype18"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase12"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fault_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultPlanitem7"
                        }
                    },
                    "severity": {
                        "type": "integer",
                        "default": 2
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "FaultPlanitem7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem9"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem11"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "WorkdoneForemanInfo": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "start_foreman": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "start_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "stop_foreman": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "stop_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "WorkdoneTelemetry": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "enginehours": {
                        "title": "Telemetry provider enginehours",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "kilometers": {
                        "title": "Telemetry provider distance in kilometers",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fuel_consumption": {
                        "title": "Telemetry provider fuel consumption",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fuel_jumps": {
                        "title": "Telemetry provider fuel jumps",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "json_content": {
                        "type": "string"
                    },
                    "calculated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "track_calculated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "count_tracks": {
                        "type": "integer",
                        "default": 0
                    },
                    "maintenance_unit_motohour": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "maintenance_unit_odometer": {
                        "type": "integer",
                        "default": 0
                    },
                    "starting_distance": {
                        "title": "How far from object the workdone was started",
                        "type": "integer"
                    },
                    "working_distance": {
                        "title": "How far from object the workdone was happening",
                        "type": "integer"
                    },
                    "enginehours_calc": {
                        "title": "Entered (best known) enginehours",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "kilometers_calc": {
                        "title": "Entered (best known) kilometers",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "duration_calc": {
                        "title": "work duration",
                        "type": "integer",
                        "default": 0
                    },
                    "enginehours_cons_calc": {
                        "title": "Calculated fuel consumption based on enginehours",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "kilometers_cons_calc": {
                        "title": "Calculated fuel consumption based on kilometers",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "duration_cons_calc": {
                        "title": "Calculated fuel consumption based on workhours",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fuel_consumption_calc_timestamp": {
                        "title": "Time when fuel consumption was last calculated\nTo discover need of recalculation",
                        "type": "integer",
                        "default": 0
                    },
                    "reg_start_time": {
                        "title": "Registered original start time if workdone start time has been modified",
                        "type": "string",
                        "format": "date-time"
                    },
                    "reg_stop_time": {
                        "title": "Registered original stop time if workdone stop time has been modified",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "DeviceLocation4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "device_uuid": {
                        "type": "string",
                        "default": ""
                    },
                    "gps_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Fileitem3": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#fileitems as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "original_name": {
                        "type": "string"
                    },
                    "mime_type": {
                        "type": "string"
                    },
                    "is_uploaded": {
                        "type": "boolean",
                        "default": false
                    },
                    "category_key": {
                        "type": "string"
                    },
                    "file_size": {
                        "type": "integer",
                        "default": 0
                    },
                    "device_uuid": {
                        "type": "string"
                    },
                    "created_at_location": {
                        "$ref": "#/components/schemas/DeviceLocation4"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "WorkdonePicture": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "fileitem": {
                        "$ref": "#/components/schemas/Fileitem3"
                    }
                },
                "type": "object"
            },
            "WorkdoneApproval": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "client_worker": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "client_meta_json": {
                        "title": "Meta data about approval: IP, e-mail (also for identifying \"unauthenticated\" e-mail approver)",
                        "type": "string"
                    },
                    "client_comment": {
                        "type": "string"
                    },
                    "client_response_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "client_approving_time": {
                        "title": "if not null then workdone is approved by client",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Currency2": {
                "properties": {
                    "code": {
                        "title": "ISO 4217 code of currency",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "WorkdoneBudget": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "price": {
                        "type": "number",
                        "format": "float"
                    },
                    "price_currency_code": {
                        "$ref": "#/components/schemas/Currency2"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem9": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase12"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem11"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence7": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker35"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worker36": {
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Worktype19": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer29": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson27": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer29"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Facility21": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer29"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson27"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Agrifield30": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CostAccount6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Project9": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Planitem12": {
                "properties": {
                    "is_group_plan": {
                        "type": "boolean"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "name": {
                        "title": "Planitem name, Utf8 string 255 chars. Auto generated based on plannedDurationSec, plannedStartTime, plannedStopTime",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype19"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility21"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility21"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield30"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount6"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project9"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage9"
                        }
                    },
                    "material_planned_usage_str": {
                        "type": "string"
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork4"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer29"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer29"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson27"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdones": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workdone10"
                        }
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem8"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem10"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus2"
                            }
                        ]
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod5"
                    },
                    "color": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType3"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence8"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility21"
                    }
                },
                "type": "object"
            },
            "AmountCategory8": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Amount category name",
                        "type": "string"
                    },
                    "shortname": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AmountCategory translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name",
                        "type": "string"
                    },
                    "shortname_slug": {
                        "type": "string"
                    },
                    "is_calculation_base": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "MaterialCategoryArchive5": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialCategory10": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material Category name, user defined. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Material Category translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name.",
                        "type": "string"
                    },
                    "is_plant_protection": {
                        "type": "boolean",
                        "default": false
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialCategoryArchive5"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Crop9": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialCertificate5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialType4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "MaterialType translation slug.",
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material17": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "name_extended": {
                        "type": "string"
                    },
                    "_amount": {
                        "type": "number",
                        "format": "double"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Material fullname, calculated value",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "category_name": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory8"
                            }
                        ]
                    },
                    "calc_amount_category": {
                        "$ref": "#/components/schemas/AmountCategory8"
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory10"
                            }
                        ]
                    },
                    "crop": {
                        "title": "In case of Seed (Material_category_id = 2), or Harvest (Material_category_id = 13) crop",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Crop9"
                            }
                        ]
                    },
                    "material_certificate": {
                        "title": "Material certificate",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCertificate5"
                            }
                        ]
                    },
                    "material_type": {
                        "title": "Material sub-type\n(TKV_MATERJAL, VAETAMISE_MATERJAL/FERT_MATERIAL )",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialType4"
                            }
                        ]
                    },
                    "material_second_type": {
                        "title": "Material second sub-type\nvaetiseliik/FERT_TYPE",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialType4"
                            }
                        ]
                    },
                    "master_material": {
                        "title": "Master Material\n(nt. taimekaitsevahend PRIA registrist, v\u00e4etis regitrist)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material17"
                            }
                        ]
                    },
                    "formula_n": {
                        "type": "string"
                    },
                    "formula_p": {
                        "type": "string"
                    },
                    "formula_k": {
                        "type": "string"
                    },
                    "formula_s": {
                        "type": "string"
                    },
                    "formula_mg": {
                        "type": "string"
                    },
                    "formula_ca": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "batch_number": {
                        "type": "string"
                    },
                    "material_impact_data": {
                        "$ref": "#/components/schemas/MaterialImpactData"
                    },
                    "seed_coating_data": {
                        "$ref": "#/components/schemas/SeedCoatingData5"
                    },
                    "is_coated_seed": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_coating_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_cover_crop": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_undersowing": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "material_config": {
                        "title": "One Config has One Material.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialConfig2"
                            }
                        ]
                    },
                    "cost_per_unit": {
                        "title": "Net cost (Purchase price)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "price_per_unit": {
                        "title": "Sale price",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialArchive4"
                        }
                    },
                    "material_lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialLifespan6"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage2"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "SeedCoatingData5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "consumption_ratio_per_base_unit": {
                        "type": "number",
                        "format": "float"
                    },
                    "coating_material": {
                        "$ref": "#/components/schemas/Material17"
                    }
                },
                "type": "object"
            },
            "MaterialArchive4": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "LifespanTypeArchive4": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "LifespanType6": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company6"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/LifespanTypeArchive4"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "MaterialLifespan6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType6"
                    },
                    "initial_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "warning_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "end_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage9": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem12"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material17"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield30"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Workdone10": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility21"
                    }
                },
                "type": "object"
            },
            "InspectionType3": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "InspectionMasterTemplate9": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "InspectionTemplate8": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_type": {
                        "$ref": "#/components/schemas/InspectionType3"
                    },
                    "inspection_master_template": {
                        "$ref": "#/components/schemas/InspectionMasterTemplate9"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "InspectionCase13": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate8"
                    },
                    "input_finished_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "planned_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "FaultPlanitem8": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem10"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem12"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Faultitem10": {
                "properties": {
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility21"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype19"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase13"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fault_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultPlanitem8"
                        }
                    },
                    "planned_start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem10": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase13"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem12"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "PlanStatus2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "CropPeriod5": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RosterType3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Name (unique)",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Translation slug",
                        "type": "string"
                    },
                    "hex_color": {
                        "title": "Background color of event",
                        "type": "string"
                    },
                    "is_planitem": {
                        "title": "Planitem event",
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence8": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "custom_rule_json": {
                        "description": "The custom recurrence rule as the web client saved it",
                        "type": "object"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker36"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Department41": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department41"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker37": {
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department41"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype20": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department41"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer30": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department41"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson28": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer30"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility22": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer30"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson28"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department41"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield31": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department41"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Project10": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department41"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Planitem13": {
                "properties": {
                    "is_group_plan": {
                        "type": "boolean"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker37"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker37"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype20"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility22"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility22"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield31"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount4"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project10"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage10"
                        }
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork4"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer30"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer30"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson28"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem9"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem11"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus"
                            }
                        ]
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod3"
                    },
                    "color": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence9"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department41"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility22"
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage10": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem13"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material15"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield31"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCase14": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FaultPlanitem9": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem11"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem13"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Faultitem11": {
                "properties": {
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility22"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype20"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase14"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fault_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultPlanitem9"
                        }
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem11": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase14"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem13"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence9": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worker38": {
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype21": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield32": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer31": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson29": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer31"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility23": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield32"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer31"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson29"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Project11": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Planitem14": {
                "properties": {
                    "is_group_plan": {
                        "type": "boolean"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype21"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility23"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility23"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield32"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount4"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project11"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage11"
                        }
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork4"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer31"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer31"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson29"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdones": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workdone11"
                        }
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem10"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem12"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus"
                            }
                        ]
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod3"
                    },
                    "color": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence10"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility23"
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage11": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem14"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material7"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield32"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workdone11": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility23"
                    }
                },
                "type": "object"
            },
            "InspectionCase15": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FaultPlanitem10": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem12"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem14"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Faultitem12": {
                "properties": {
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility23"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype21"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase15"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fault_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultPlanitem10"
                        }
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem12": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase15"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem14"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence10": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker38"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worker39": {
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Worktype22": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer32": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson30": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer32"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility24": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer32"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson30"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield33": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CostAccount7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Project12": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Planitem15": {
                "properties": {
                    "is_group_plan": {
                        "type": "boolean"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker39"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker39"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype22"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility24"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility24"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield33"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount7"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project12"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage12"
                        }
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork4"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer32"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer32"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson30"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem11"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem13"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus3"
                            }
                        ]
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod6"
                    },
                    "color": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType4"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence11"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility24"
                    }
                },
                "type": "object"
            },
            "Material18": {
                "properties": {
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage12": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem15"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material18"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield33"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "InspectionTemplate9": {
                "properties": {
                    "id": {
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "InspectionCase16": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate9"
                    }
                },
                "type": "object"
            },
            "FaultPlanitem11": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem13"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem15"
                    }
                },
                "type": "object"
            },
            "Faultitem13": {
                "properties": {
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility24"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype22"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase16"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fault_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultPlanitem11"
                        }
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem13": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase16"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem15"
                    }
                },
                "type": "object"
            },
            "PlanStatus3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CropPeriod6": {
                "type": "object"
            },
            "RosterType4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Name (unique)",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Translation slug",
                        "type": "string"
                    },
                    "hex_color": {
                        "title": "Background color of event",
                        "type": "string"
                    },
                    "is_planitem": {
                        "title": "Planitem event",
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence11": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    }
                },
                "type": "object"
            },
            "Worker40": {
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Worktype23": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer33": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson31": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer33"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Facility25": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer33"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson31"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "WorkobjectCategory8": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Agrifield34": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory8"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workdone12": {
                "properties": {
                    "roster_type": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker40"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype23"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility25"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility25"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "agrifield": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield34"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "cost_account": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CostAccount6"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer33"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_unfinished": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_invoiced": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_manual_entry": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility25"
                    }
                },
                "type": "object"
            },
            "Project13": {
                "properties": {
                    "workdones": {
                        "title": "DANGER",
                        "description": "When project has thousands of workdones (company 233 L\u00e4\u00e4ne Teed)\nThen including this into serialization will cause serious performance hit",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workdone12"
                        }
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_work_seconds": {
                        "type": "integer"
                    },
                    "planned_budget": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "rosteritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Rosteritem2"
                        }
                    },
                    "planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Planitem16"
                        }
                    },
                    "project_workers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorker4"
                        }
                    },
                    "project_worktypes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorktype4"
                        }
                    },
                    "project_facilities": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectFacility4"
                        }
                    },
                    "project_maintenance_units": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectMaintenanceUnit"
                        }
                    },
                    "project_materials": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectMaterial"
                        }
                    },
                    "project_workobjects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectAgrifield"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Color": {
                "properties": {
                    "translated_name": {
                        "type": "string"
                    },
                    "code": {
                        "title": "Six digit hex code of color",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Color slug ( color.maroon -> \"Maroon\", color.fuchsia -> \"Fuchsia\")",
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Shift": {
                "properties": {
                    "pause_minutes": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Formatted time, like \"00:00:00\"",
                        "type": "string"
                    },
                    "to_time": {
                        "title": "Formatted time, like \"23:59:59\"",
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "name": {
                        "title": "Shift name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "short_name": {
                        "title": "Shift short name, Utf8 string 3 chars",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype23"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield34"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility25"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility25"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility25"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount6"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project13"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "outer_id": {
                        "title": "Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "color_code": {
                        "title": "Color in visuals",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Color"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "RosterStatus": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence12": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "custom_rule_json": {
                        "description": "The custom recurrence rule as the web client saved it",
                        "type": "object"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Rosteritem2": {
                "properties": {
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "name": {
                        "title": "Rosteritem name, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Rosteritem fullname, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype23"
                    },
                    "shift": {
                        "$ref": "#/components/schemas/Shift"
                    },
                    "description": {
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "workdone": {
                        "title": "!! NB !! Do not show this to \"classificator\" serialization groups",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workdone12"
                            }
                        ]
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield34"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility25"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility25"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer33"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson31"
                            }
                        ]
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer33"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount6"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project13"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "description": "work, - usual type, wide green color\nunavailable, - (translate to \"vacation\" if rosteritem has worker set) - slim red color\nemergency, - (translate to \"sickness\" if rosteritem has worker set) - slim red color",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType3"
                            }
                        ]
                    },
                    "roster_status": {
                        "title": "Classificator about (Worker) assignment status",
                        "description": "open, - Worker not assigned - orange color\ntaken, - Worker has created or assigned herself Open or Reopen status item: to be accepted by Boss - red color,\nassigned, - Worker assignment is accepted by Boss - green color,\nreopen, - assigned Worker has refused to do it - orange color,",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterStatus"
                            }
                        ]
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence12"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility25"
                    }
                },
                "type": "object"
            },
            "Planitem16": {
                "properties": {
                    "is_group_plan": {
                        "type": "boolean"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "name": {
                        "title": "Planitem name, Utf8 string 255 chars. Auto generated based on plannedDurationSec, plannedStartTime, plannedStopTime",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype23"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility25"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility25"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield34"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount6"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project13"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage13"
                        }
                    },
                    "material_planned_usage_str": {
                        "type": "string"
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork4"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer33"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer33"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson31"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdones": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workdone12"
                        }
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem12"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem14"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus2"
                            }
                        ]
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod5"
                    },
                    "color": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType3"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence12"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility25"
                    }
                },
                "type": "object"
            },
            "ProjectWorker4": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker40"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProjectWorktype4": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype23"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProjectFacility4": {
                "properties": {
                    "resource": {
                        "title": "Get Resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility25"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProjectMaintenanceUnit": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility25"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Material19": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "ProjectMaterial": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material19"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProjectAgrifield": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield34"
                            }
                        ]
                    },
                    "from_time": {
                        "title": "The project_agrifield columns carry no type comment, unlike the other project resource tables; redeclared without it.",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage13": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem16"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material19"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield34"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "InspectionCase17": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate8"
                    },
                    "input_finished_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "planned_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "FaultPlanitem12": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem14"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem16"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Faultitem14": {
                "properties": {
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility25"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype23"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase17"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fault_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultPlanitem12"
                        }
                    },
                    "planned_start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker40"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem14": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase17"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem16"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage14": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem17"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material20"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield33"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "FaultPlanitem13": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem15"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem17"
                    }
                },
                "type": "object"
            },
            "Faultitem15": {
                "properties": {
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility24"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype22"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase16"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fault_planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FaultPlanitem13"
                        }
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Planitem17": {
                "properties": {
                    "is_group_plan": {
                        "type": "boolean"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker39"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker39"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype22"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility24"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility24"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield33"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount7"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project12"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage14"
                        }
                    },
                    "agrifield_work": {
                        "$ref": "#/components/schemas/AgrifieldWork4"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer32"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer32"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson30"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem13"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem15"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus3"
                            }
                        ]
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod6"
                    },
                    "color": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType4"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence11"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility24"
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem15": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase16"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem17"
                    }
                },
                "type": "object"
            },
            "AmountCategory9": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Amount category name",
                        "type": "string"
                    },
                    "shortname": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AmountCategory translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name",
                        "type": "string"
                    },
                    "shortname_slug": {
                        "type": "string"
                    },
                    "is_calculation_base": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "MaterialCategoryArchive6": {
                "properties": {
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialCategory11": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material Category name, user defined. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Material Category translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name.",
                        "type": "string"
                    },
                    "is_plant_protection": {
                        "type": "boolean",
                        "default": false
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialCategoryArchive6"
                        }
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Crop10": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialCertificate6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialType5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "MaterialType translation slug.",
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material20": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "name_extended": {
                        "type": "string"
                    },
                    "_amount": {
                        "type": "number",
                        "format": "double"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Material fullname, calculated value",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "category_name": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory9"
                            }
                        ]
                    },
                    "calc_amount_category": {
                        "$ref": "#/components/schemas/AmountCategory9"
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory11"
                            }
                        ]
                    },
                    "crop": {
                        "title": "In case of Seed (Material_category_id = 2), or Harvest (Material_category_id = 13) crop",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Crop10"
                            }
                        ]
                    },
                    "material_certificate": {
                        "title": "Material certificate",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCertificate6"
                            }
                        ]
                    },
                    "material_type": {
                        "title": "Material sub-type\n(TKV_MATERJAL, VAETAMISE_MATERJAL/FERT_MATERIAL )",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialType5"
                            }
                        ]
                    },
                    "material_second_type": {
                        "title": "Material second sub-type\nvaetiseliik/FERT_TYPE",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialType5"
                            }
                        ]
                    },
                    "master_material": {
                        "title": "Master Material\n(nt. taimekaitsevahend PRIA registrist, v\u00e4etis regitrist)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material20"
                            }
                        ]
                    },
                    "formula_n": {
                        "type": "string"
                    },
                    "formula_p": {
                        "type": "string"
                    },
                    "formula_k": {
                        "type": "string"
                    },
                    "formula_s": {
                        "type": "string"
                    },
                    "formula_mg": {
                        "type": "string"
                    },
                    "formula_ca": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "batch_number": {
                        "type": "string"
                    },
                    "material_impact_data": {
                        "$ref": "#/components/schemas/MaterialImpactData"
                    },
                    "seed_coating_data": {
                        "$ref": "#/components/schemas/SeedCoatingData6"
                    },
                    "is_coated_seed": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_coating_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_cover_crop": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_undersowing": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "material_config": {
                        "title": "One Config has One Material.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialConfig2"
                            }
                        ]
                    },
                    "cost_per_unit": {
                        "title": "Net cost (Purchase price)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "price_per_unit": {
                        "title": "Sale price",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialArchive5"
                        }
                    },
                    "material_lifespans": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialLifespan7"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage2"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "SeedCoatingData6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "consumption_ratio_per_base_unit": {
                        "type": "number",
                        "format": "float"
                    },
                    "coating_material": {
                        "$ref": "#/components/schemas/Material20"
                    }
                },
                "type": "object"
            },
            "MaterialArchive5": {
                "properties": {
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "LifespanTypeArchive5": {
                "properties": {
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "LifespanType7": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company7"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/LifespanTypeArchive5"
                        }
                    }
                },
                "type": "object"
            },
            "MaterialLifespan7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "lifespan_type": {
                        "$ref": "#/components/schemas/LifespanType7"
                    },
                    "initial_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "warning_value": {
                        "type": "integer",
                        "default": 0
                    },
                    "end_value": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "TimeTrackingType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "Worker41": {
                "properties": {
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType2"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Worktype24": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "pria_uuid": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility26": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "serial_number": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Crop11": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "base_name": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "hex_color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield35": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod4"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "crop": {
                        "$ref": "#/components/schemas/Crop11"
                    },
                    "pria_uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Harvest": {
                "properties": {
                    "id": {
                        "title": "SilageMaterial Id",
                        "type": "integer"
                    },
                    "crop_layer_type": {
                        "title": "CropLayerType",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropLayerType"
                            }
                        ]
                    },
                    "harvest_type": {
                        "title": "Harvest Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/HarvestType"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workdone13": {
                "properties": {
                    "location_history": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pause_minutes": {
                        "type": "integer"
                    },
                    "roster_type": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "paused_from_timestamp": {
                        "type": "integer"
                    },
                    "duration_as_text": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Get company",
                        "description": "This is needed for RestBaseController->hasRightToModify, WorkdoneCreator",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker41"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype24"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility26"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility_start_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "main_facility_stop_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility26"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "agrifield": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield35"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "kilometer_start": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "kilometer_stop": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fuel_consumption": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker41"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "approving_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pria_sync_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "hectares_served": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "is_mobile_initiated": {
                        "type": "boolean"
                    },
                    "start_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "start_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialUsage2"
                        }
                    },
                    "cost_account": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CostAccount7"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_paused": {
                        "type": "boolean",
                        "default": false
                    },
                    "planitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Planitem18"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "rosteritem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Rosteritem3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fuel_filling": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FuelFilling5"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "faultitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Faultitem16"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase18"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_customer": {
                        "type": "boolean",
                        "default": false
                    },
                    "customer": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer34"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "description_extended": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_agrifield_finished": {
                        "type": "boolean",
                        "default": true
                    },
                    "hectares_displayed": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "yield_measured": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "department": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department42"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "crop_period": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropPeriod4"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "project": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Project14"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "device_uuid": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "foreman_info": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneForemanInfo2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_telemetry": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneTelemetry"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_pictures": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkdonePicture2"
                        }
                    },
                    "is_unfinished": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_invoiced": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_manual_entry": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_created": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_stopped": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_signed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdone_approval": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneApproval2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_budget": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneBudget2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility26"
                    }
                },
                "type": "object"
            },
            "AmountCategory10": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Amount category name",
                        "type": "string"
                    },
                    "slug": {
                        "title": "AmountCategory translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "MaterialCategory12": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material Category name, user defined. Required.",
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material21": {
                "properties": {
                    "name_extended": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Material fullname, calculated value",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "category_name": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory10"
                            }
                        ]
                    },
                    "calc_amount_category": {
                        "$ref": "#/components/schemas/AmountCategory10"
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory12"
                            }
                        ]
                    },
                    "is_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "material_config": {
                        "title": "One Config has One Material.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialConfig2"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialUsage2": {
                "properties": {
                    "harvest": {
                        "$ref": "#/components/schemas/Harvest"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "workdone": {
                        "$ref": "#/components/schemas/Workdone13"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material21"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield35"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_material_report": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_inbound": {
                        "title": "Inbound = production/buy, Outbound = cost/sell",
                        "type": "boolean",
                        "default": false
                    },
                    "is_incremental": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Planitem18": {
                "properties": {
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility26"
                    }
                },
                "type": "object"
            },
            "Rosteritem3": {
                "properties": {
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility26"
                    }
                },
                "type": "object"
            },
            "FuelFilling5": {
                "type": "object"
            },
            "Faultitem16": {
                "properties": {
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionCase18": {
                "type": "object"
            },
            "Customer34": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department42": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Project14": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "WorkdoneForemanInfo2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "start_foreman": {
                        "$ref": "#/components/schemas/Worker41"
                    },
                    "start_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "stop_foreman": {
                        "$ref": "#/components/schemas/Worker41"
                    },
                    "stop_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Fileitem4": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#fileitems as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "original_name": {
                        "type": "string"
                    },
                    "mime_type": {
                        "type": "string"
                    },
                    "is_uploaded": {
                        "type": "boolean",
                        "default": false
                    },
                    "category_key": {
                        "type": "string"
                    },
                    "file_size": {
                        "type": "integer",
                        "default": 0
                    },
                    "device_uuid": {
                        "type": "string"
                    },
                    "created_at_location": {
                        "$ref": "#/components/schemas/DeviceLocation2"
                    }
                },
                "type": "object"
            },
            "WorkdonePicture2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "fileitem": {
                        "$ref": "#/components/schemas/Fileitem4"
                    }
                },
                "type": "object"
            },
            "WorkdoneApproval2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "client_worker": {
                        "$ref": "#/components/schemas/Worker41"
                    },
                    "client_meta_json": {
                        "title": "Meta data about approval: IP, e-mail (also for identifying \"unauthenticated\" e-mail approver)",
                        "type": "string"
                    },
                    "client_comment": {
                        "type": "string"
                    },
                    "client_response_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "client_approving_time": {
                        "title": "if not null then workdone is approved by client",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Currency3": {
                "properties": {
                    "code": {
                        "title": "ISO 4217 code of currency",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "WorkdoneBudget2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "price": {
                        "type": "number",
                        "format": "float"
                    },
                    "price_currency_code": {
                        "$ref": "#/components/schemas/Currency3"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Agrifield36": {
                "type": "object"
            },
            "AnimalType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "pria_code": {
                        "title": "Pria code.",
                        "description": "PIIMALEHM\t\t        Piimalehm\nYLE_24K_LEHM_VEIS\t\t\u00dcle 24 kuu vanune ammlehm ja lihaveis\nKUNI_6K_LEHMVASIKAS\t\tKuni kuue kuu vanune lehmvasikas\nKUNI_6K_PULLVASIKAS\t\tKuni kuue kuu vanune pullvasikas\nYLE_6_LEHMMULLIKAS\t\tLehmmullikas alates kuue kuu vanusest kuni poegimiseni\nYLE_6_PULLMULLIKAS\t\tPullmullikas alates kuue kuu vanusest kuni realiseerimiseni\nLAMMAS_KUNI_1A_TALLEGA\tLammas koos kuni \u00fcheaastase tallega, muu lammas\nKITS_KUNI_1A_TALLEGA\t\tKits koos kuni \u00fcheaastase tallega, muu kits\nHOBUNE_KUNI_6K_VARSAGA\tHobune koos kuni kuuekuuse varsaga, muu hobune",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Herding2": {
                "properties": {
                    "days_in_period": {
                        "type": "integer"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "total_n": {
                        "title": "Total added element N in kg, summed over all fertilizing herding caches.",
                        "type": "number",
                        "format": "float"
                    },
                    "total_p": {
                        "title": "Total added element P in kg, summed over all fertilizing herding caches.",
                        "type": "number",
                        "format": "float"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield36"
                    },
                    "animal_type": {
                        "$ref": "#/components/schemas/AnimalType2"
                    },
                    "start_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "end_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "herd_size": {
                        "type": "integer",
                        "default": 0
                    },
                    "year0_percent": {
                        "type": "integer",
                        "default": 100
                    },
                    "year1_percent": {
                        "type": "integer",
                        "default": 0
                    },
                    "intensity_percent": {
                        "type": "integer",
                        "default": 100
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "hectares_served": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "pria_sync_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pria_result": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "type": "object"
            },
            "CropPeriod7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "PriaPayee4": {
                "properties": {
                    "color": {
                        "title": "Get displayColor",
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "regnr": {
                        "type": "string"
                    },
                    "display_color": {
                        "type": "string"
                    },
                    "pria_uuid": {
                        "type": "string"
                    },
                    "confirmation_sent_at": {
                        "title": "The moment when confirmation was sent to PRIA",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Worker42": {
                "properties": {
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker42"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker42"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "PriaFile": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod7"
                    },
                    "pria_payee": {
                        "$ref": "#/components/schemas/PriaPayee4"
                    },
                    "file_name": {
                        "type": "string"
                    },
                    "pria_file_type": {
                        "type": "integer"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker42"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker42"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "PriaPayee5": {
                "properties": {
                    "color": {
                        "title": "Get displayColor",
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "regnr": {
                        "type": "string"
                    },
                    "display_color": {
                        "type": "string"
                    },
                    "pria_uuid": {
                        "type": "string"
                    },
                    "confirmation_sent_at": {
                        "title": "The moment when confirmation was sent to PRIA",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Department43": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department43"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department43"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker43": {
                "properties": {
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "name": {
                        "type": "string"
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department43"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department43"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "user": {
                        "$ref": "#/components/schemas/User"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Project15": {
                "properties": {
                    "project_manager_fullname": {
                        "type": "string"
                    },
                    "planned_work_hours": {
                        "type": "number",
                        "format": "double"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department43"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "outer_id": {
                        "title": "Project Id in external system, for example code in Accounting or Project Management system.",
                        "type": "string"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "actual_finish_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_work_seconds": {
                        "type": "integer"
                    },
                    "planned_budget": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "project_workers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorker5"
                        }
                    },
                    "project_worktypes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorktype5"
                        }
                    },
                    "project_facilities": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectFacility5"
                        }
                    },
                    "project_maintenance_units": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectMaintenanceUnit2"
                        }
                    },
                    "project_materials": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectMaterial2"
                        }
                    },
                    "project_workobjects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectAgrifield2"
                        }
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount2"
                    },
                    "project_manager": {
                        "$ref": "#/components/schemas/Worker43"
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "fault_severity": {
                        "title": "Fault severity",
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department43"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "ProjectWorker5": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker43"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project15"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "title": "Last update unix timestamp",
                        "type": "integer",
                        "default": 0
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype25": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department43"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department43"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "ProjectWorktype5": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype25"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project15"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "title": "Last update unix timestamp",
                        "type": "integer",
                        "default": 0
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility27": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department43"
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department43"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "ProjectFacility5": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "facility": {
                        "$ref": "#/components/schemas/Facility27"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project15"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "title": "Last update unix timestamp",
                        "type": "integer",
                        "default": 0
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "ProjectMaintenanceUnit2": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility27"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project15"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "title": "Last update unix timestamp",
                        "type": "integer",
                        "default": 0
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialCategory13": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material Category name, user defined. Required.",
                        "type": "string"
                    },
                    "shortname": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "Material Category translation slug. Filled for categories provided by Terake and if exists, should be preferred over Name.",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Material22": {
                "properties": {
                    "name_extended": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Material fullname, calculated value",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "category_name": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory2"
                            }
                        ]
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory13"
                            }
                        ]
                    },
                    "formula_n": {
                        "type": "string"
                    },
                    "formula_p": {
                        "type": "string"
                    },
                    "formula_k": {
                        "type": "string"
                    },
                    "formula_s": {
                        "type": "string"
                    },
                    "formula_mg": {
                        "type": "string"
                    },
                    "formula_ca": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "batch_number": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProjectMaterial2": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material22"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project15"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "title": "Last update unix timestamp",
                        "type": "integer",
                        "default": 0
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer35": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department43"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department43"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield37": {
                "properties": {
                    "__field_number_sortable": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department43"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "water_protection_area_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "field_usage_description": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory4"
                    },
                    "crop": {
                        "$ref": "#/components/schemas/Crop5"
                    },
                    "crop_variety": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer35"
                    },
                    "location_area": {
                        "$ref": "#/components/schemas/LocationArea2"
                    },
                    "is_water_protection_active": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department43"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "ProjectAgrifield2": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "from_time": {
                        "title": "The project_agrifield columns carry no type comment, unlike the other project resource tables; redeclared without it.",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield37"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project15"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "title": "Last update unix timestamp",
                        "type": "integer",
                        "default": 0
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker44": {
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "Worktype26": {
                "properties": {
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility28": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "serial_number": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "WorkobjectCategory9": {
                "type": "object"
            },
            "Agrifield38": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory9"
                    }
                },
                "type": "object"
            },
            "CostAccount8": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Customer36": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workdone14": {
                "properties": {
                    "roster_type": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker44"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype26"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility28"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility28"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "agrifield": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield38"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "cost_account": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CostAccount8"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer36"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_unfinished": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_invoiced": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_manual_entry": {
                        "type": "boolean",
                        "default": false
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility28"
                    }
                },
                "type": "object"
            },
            "Color2": {
                "properties": {
                    "code": {
                        "title": "Six digit hex code of color",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Shift2": {
                "properties": {
                    "name": {
                        "title": "Shift name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "short_name": {
                        "title": "Shift short name, Utf8 string 3 chars",
                        "type": "string"
                    },
                    "color_code": {
                        "title": "Color in visuals",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Color2"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "RosterType5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Name (unique)",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Translation slug",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosterStatus2": {
                "type": "object"
            },
            "Rosteritem4": {
                "properties": {
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker44"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype26"
                    },
                    "shift": {
                        "$ref": "#/components/schemas/Shift2"
                    },
                    "description": {
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "workdone": {
                        "title": "!! NB !! Do not show this to \"classificator\" serialization groups",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workdone14"
                            }
                        ]
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield38"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility28"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility28"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer36"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson17"
                            }
                        ]
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount8"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "description": "work, - usual type, wide green color\nunavailable, - (translate to \"vacation\" if rosteritem has worker set) - slim red color\nemergency, - (translate to \"sickness\" if rosteritem has worker set) - slim red color",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType5"
                            }
                        ]
                    },
                    "roster_status": {
                        "title": "Classificator about (Worker) assignment status",
                        "description": "open, - Worker not assigned - orange color\ntaken, - Worker has created or assigned herself Open or Reopen status item: to be accepted by Boss - red color,\nassigned, - Worker assignment is accepted by Boss - green color,\nreopen, - assigned Worker has refused to do it - orange color,",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterStatus2"
                            }
                        ]
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility28"
                    }
                },
                "type": "object"
            },
            "PlanStatus4": {
                "type": "object"
            },
            "Planitem19": {
                "properties": {
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker44"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype26"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility28"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility28"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield38"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount8"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer36"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson17"
                            }
                        ]
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus4"
                            }
                        ]
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType5"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility28"
                    }
                },
                "type": "object"
            },
            "ProjectWorker6": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker44"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProjectWorktype6": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype26"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProjectFacility6": {
                "properties": {
                    "resource": {
                        "title": "Get Resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility28"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProjectMaintenanceUnit3": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility28"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Material23": {
                "type": "object"
            },
            "ProjectMaterial3": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Material23"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProjectAgrifield3": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield38"
                            }
                        ]
                    },
                    "from_time": {
                        "title": "The project_agrifield columns carry no type comment, unlike the other project resource tables; redeclared without it.",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "planned_budget": {
                        "type": "number",
                        "format": "float"
                    },
                    "description": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Project16": {
                "properties": {
                    "workdones": {
                        "title": "DANGER",
                        "description": "When project has thousands of workdones (company 233 L\u00e4\u00e4ne Teed)\nThen including this into serialization will cause serious performance hit",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workdone14"
                        }
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_work_seconds": {
                        "type": "integer"
                    },
                    "planned_budget": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "rosteritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Rosteritem4"
                        }
                    },
                    "planitems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Planitem19"
                        }
                    },
                    "project_workers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorker6"
                        }
                    },
                    "project_worktypes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorktype6"
                        }
                    },
                    "project_facilities": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectFacility6"
                        }
                    },
                    "project_maintenance_units": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectMaintenanceUnit3"
                        }
                    },
                    "project_materials": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectMaterial3"
                        }
                    },
                    "project_workobjects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectAgrifield3"
                        }
                    }
                },
                "type": "object"
            },
            "RecurrenceType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Recurrence name (needed if used as template)",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_template": {
                        "title": "True if used as template",
                        "type": "boolean",
                        "default": false
                    },
                    "is_planitem_template": {
                        "title": "True if used only as planitem template",
                        "type": "boolean",
                        "default": false
                    },
                    "recurrence_rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceRule"
                        }
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceTypeArchive"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker45"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker45"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Worker45": {
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "color": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department44"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker45"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace15"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker45"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker45"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Department44": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker45"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker45"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department44"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Profession6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace15": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department44"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession6"
                            }
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "RecurrenceRule": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType"
                    },
                    "repeat_year": {
                        "title": "Repeate in yearly basis\n0 - not defined, 1 - every year, 2 - every second year .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_month": {
                        "title": "Repeate in monthly basis\n0 - not defined, 1 - every month, 2 - every second month, 3 every third month .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_week": {
                        "title": "Repeate in weekly basis\n0 - not defined, 1 - every week, 2 - every second week .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_day": {
                        "title": "Repeate in daily basis\n0 - not defined, 1 - every day, 2 - every second day, 3 - every third day ... 10 - every tenth day",
                        "type": "integer",
                        "default": 0
                    },
                    "week_of_month": {
                        "title": "Repeate on defined week of month\n0 - not defined, 1 - every first week, 2 - every second week",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_month": {
                        "title": "Repeate on defined day of month\n0 - not defined, 1 - every first day, 2 - every second day of month ... 10 - every 10th day of month",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_week": {
                        "title": "Repeate on defined day of week\n0 - not defined, 1 - every Sunday, 2 - every Monday ... 7 - every Saturday",
                        "type": "integer",
                        "default": 0
                    },
                    "custom_pattern": {
                        "title": "Custom pattern",
                        "description": "String in format \"1100110\" where \"1\" is work day and \"0\" is off day\n\"1100110\" = 2 work, 2 off, 2 work, 1 off.\nMust start with work day\nMust be \"daily\" pattern.",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker45"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker45"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RecurrenceTypeArchive": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker45"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker45"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence13": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType"
                    },
                    "custom_rule_json": {
                        "description": "The custom recurrence rule as the web client saved it",
                        "type": "object"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker45"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker45"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Department45": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department45"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department45"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Planitem20": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department45"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "name": {
                        "title": "Planitem name, Utf8 string 255 chars. Auto generated based on plannedDurationSec, plannedStartTime, plannedStopTime",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "material_planned_usages": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" or \"calendaritem\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialPlannedUsage15"
                        }
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus5"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department45"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility29"
                    }
                },
                "type": "object"
            },
            "MaterialPlannedUsage15": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "planitem": {
                        "$ref": "#/components/schemas/Planitem20"
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "PlanStatus5": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Customer37": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department45"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department45"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson32": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer37"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility29": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department45"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company3"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer37"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson32"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department45"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker46": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "color": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department46"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace16"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Department46": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department46"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace16": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department46"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession6"
                            }
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Worktype27": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department46"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield39": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department46"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer38": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department46"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson33": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer38"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Facility30": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer38"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson33"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department46"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Project17": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department46"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Shift3": {
                "properties": {
                    "pause_minutes": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Formatted time, like \"00:00:00\"",
                        "type": "string"
                    },
                    "to_time": {
                        "title": "Formatted time, like \"23:59:59\"",
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "name": {
                        "title": "Shift name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "short_name": {
                        "title": "Shift short name, Utf8 string 3 chars",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype27"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield39"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility30"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility30"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility30"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount6"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project17"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "outer_id": {
                        "title": "Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "color_code": {
                        "title": "Color in visuals",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Color"
                            }
                        ]
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage2"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department46"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workdone15": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility30"
                    }
                },
                "type": "object"
            },
            "RosterType6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Name (unique)",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Translation slug",
                        "type": "string"
                    },
                    "slug_short": {
                        "type": "string"
                    },
                    "hex_color": {
                        "title": "Background color of event",
                        "type": "string"
                    },
                    "is_full_day": {
                        "title": "Event is full day event (vacation, sickness)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_background": {
                        "title": "Event is visible only for information purposes (project, partial workload, repair)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_planitem": {
                        "title": "Planitem event",
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RosterStatus3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RecurrenceType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Recurrence name (needed if used as template)",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_template": {
                        "title": "True if used as template",
                        "type": "boolean",
                        "default": false
                    },
                    "recurrence_rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceRule2"
                        }
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceTypeArchive2"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RecurrenceRule2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType2"
                    },
                    "repeat_year": {
                        "title": "Repeate in yearly basis\n0 - not defined, 1 - every year, 2 - every second year .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_month": {
                        "title": "Repeate in monthly basis\n0 - not defined, 1 - every month, 2 - every second month, 3 every third month .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_week": {
                        "title": "Repeate in weekly basis\n0 - not defined, 1 - every week, 2 - every second week .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_day": {
                        "title": "Repeate in daily basis\n0 - not defined, 1 - every day, 2 - every second day, 3 - every third day ... 10 - every tenth day",
                        "type": "integer",
                        "default": 0
                    },
                    "week_of_month": {
                        "title": "Repeate on defined week of month\n0 - not defined, 1 - every first week, 2 - every second week",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_month": {
                        "title": "Repeate on defined day of month\n0 - not defined, 1 - every first day, 2 - every second day of month ... 10 - every 10th day of month",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_week": {
                        "title": "Repeate on defined day of week\n0 - not defined, 1 - every Sunday, 2 - every Monday ... 7 - every Saturday",
                        "type": "integer",
                        "default": 0
                    },
                    "custom_pattern": {
                        "title": "Custom pattern",
                        "description": "String in format \"1100110\" where \"1\" is work day and \"0\" is off day\n\"1100110\" = 2 work, 2 off, 2 work, 1 off.\nMust start with work day\nMust be \"daily\" pattern.",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RecurrenceTypeArchive2": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence14": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType2"
                    },
                    "custom_rule_json": {
                        "description": "The custom recurrence rule as the web client saved it",
                        "type": "object"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Rosteritem5": {
                "properties": {
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_minutes": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string"
                    },
                    "planned_stop_time": {
                        "type": "string"
                    },
                    "workdones": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "name": {
                        "title": "Rosteritem name, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Rosteritem fullname, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype27"
                    },
                    "shift": {
                        "$ref": "#/components/schemas/Shift3"
                    },
                    "description": {
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "workdone": {
                        "title": "!! NB !! Do not show this to \"classificator\" serialization groups",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workdone15"
                            }
                        ]
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield39"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility30"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility30"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer38"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson33"
                            }
                        ]
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer38"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount6"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project17"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "description": "work, - usual type, wide green color\nunavailable, - (translate to \"vacation\" if rosteritem has worker set) - slim red color\nemergency, - (translate to \"sickness\" if rosteritem has worker set) - slim red color",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType6"
                            }
                        ]
                    },
                    "roster_status": {
                        "title": "Classificator about (Worker) assignment status",
                        "description": "open, - Worker not assigned - orange color\ntaken, - Worker has created or assigned herself Open or Reopen status item: to be accepted by Boss - red color,\nassigned, - Worker assignment is accepted by Boss - green color,\nreopen, - assigned Worker has refused to do it - orange color,",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterStatus3"
                            }
                        ]
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence14"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker46"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department46"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility30"
                    }
                },
                "type": "object"
            },
            "Worker47": {
                "properties": {
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "color": {
                        "type": "string"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department47"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType3"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace17"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Department47": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department47"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "TimeTrackingType3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Workplace17": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department47"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession6"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Worktype28": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "pria_uuid": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department47"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield40": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department47"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer39": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department47"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson34": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer39"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Facility31": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer39"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson34"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department47"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Project18": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department47"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Shift4": {
                "properties": {
                    "pause_minutes": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Formatted time, like \"00:00:00\"",
                        "type": "string"
                    },
                    "to_time": {
                        "title": "Formatted time, like \"23:59:59\"",
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "name": {
                        "title": "Shift name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "short_name": {
                        "title": "Shift short name, Utf8 string 3 chars",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype28"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield40"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility31"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility31"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility31"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount6"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project18"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "outer_id": {
                        "title": "Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "color_code": {
                        "title": "Color in visuals",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Color"
                            }
                        ]
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage2"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department47"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialConfig3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "click_amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "min_seconds_between_clicks": {
                        "type": "integer",
                        "default": 0
                    },
                    "default_amount": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "default_ratio_per_unit": {
                        "type": "number",
                        "format": "float"
                    }
                },
                "type": "object"
            },
            "Material24": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "material_config": {
                        "title": "One Config has One Material.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialConfig3"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialUsage3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material24"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield40"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_material_report": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_inbound": {
                        "title": "Inbound = production/buy, Outbound = cost/sell",
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "PlanStatus6": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Planitem21": {
                "properties": {
                    "name": {
                        "title": "Planitem name, Utf8 string 255 chars. Auto generated based on plannedDurationSec, plannedStartTime, plannedStopTime",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus6"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department47"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility31"
                    }
                },
                "type": "object"
            },
            "Rosteritem6": {
                "properties": {
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_minutes": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string"
                    },
                    "planned_stop_time": {
                        "type": "string"
                    },
                    "workdones": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "name": {
                        "title": "Rosteritem name, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Rosteritem fullname, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype28"
                    },
                    "shift": {
                        "$ref": "#/components/schemas/Shift4"
                    },
                    "description": {
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "workdone": {
                        "title": "!! NB !! Do not show this to \"classificator\" serialization groups",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workdone16"
                            }
                        ]
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield40"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility31"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility31"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer39"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson34"
                            }
                        ]
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer39"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount6"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project18"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "description": "work, - usual type, wide green color\nunavailable, - (translate to \"vacation\" if rosteritem has worker set) - slim red color\nemergency, - (translate to \"sickness\" if rosteritem has worker set) - slim red color",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType6"
                            }
                        ]
                    },
                    "roster_status": {
                        "title": "Classificator about (Worker) assignment status",
                        "description": "open, - Worker not assigned - orange color\ntaken, - Worker has created or assigned herself Open or Reopen status item: to be accepted by Boss - red color,\nassigned, - Worker assignment is accepted by Boss - green color,\nreopen, - assigned Worker has refused to do it - orange color,",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterStatus3"
                            }
                        ]
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence15"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department47"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility31"
                    }
                },
                "type": "object"
            },
            "FuelFilling6": {
                "properties": {
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Faultitem17": {
                "properties": {
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionCase19": {
                "properties": {
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "WorkdoneForemanInfo3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "start_foreman": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "start_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "stop_foreman": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "stop_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Fileitem5": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#fileitems as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "original_name": {
                        "type": "string"
                    },
                    "mime_type": {
                        "type": "string"
                    },
                    "is_uploaded": {
                        "type": "boolean",
                        "default": false
                    },
                    "category_key": {
                        "type": "string"
                    },
                    "file_size": {
                        "type": "integer",
                        "default": 0
                    },
                    "device_uuid": {
                        "type": "string"
                    },
                    "created_at_location": {
                        "$ref": "#/components/schemas/DeviceLocation2"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "WorkdonePicture3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "fileitem": {
                        "$ref": "#/components/schemas/Fileitem5"
                    }
                },
                "type": "object"
            },
            "WorkdoneApproval3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "client_worker": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "client_meta_json": {
                        "title": "Meta data about approval: IP, e-mail (also for identifying \"unauthenticated\" e-mail approver)",
                        "type": "string"
                    },
                    "client_comment": {
                        "type": "string"
                    },
                    "client_response_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "client_approving_time": {
                        "title": "if not null then workdone is approved by client",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Currency4": {
                "properties": {
                    "code": {
                        "title": "ISO 4217 code of currency",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "WorkdoneBudget3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "price": {
                        "type": "number",
                        "format": "float"
                    },
                    "price_currency_code": {
                        "$ref": "#/components/schemas/Currency4"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Workdone16": {
                "properties": {
                    "location_history": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pause_minutes": {
                        "type": "integer"
                    },
                    "roster_type": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "paused_from_timestamp": {
                        "type": "integer"
                    },
                    "duration_as_text": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Get company",
                        "description": "This is needed for RestBaseController->hasRightToModify, WorkdoneCreator",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker47"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype28"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility31"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility_start_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "main_facility_stop_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility31"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "agrifield": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield40"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "kilometer_start": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "kilometer_stop": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fuel_consumption": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker47"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "approving_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pria_sync_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "hectares_served": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "is_mobile_initiated": {
                        "type": "boolean"
                    },
                    "start_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "start_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialUsage3"
                        }
                    },
                    "cost_account": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CostAccount6"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_paused": {
                        "type": "boolean",
                        "default": false
                    },
                    "planitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Planitem21"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "rosteritem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Rosteritem6"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fuel_filling": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FuelFilling6"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "faultitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Faultitem17"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase19"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_customer": {
                        "type": "boolean",
                        "default": false
                    },
                    "customer": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer39"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "description_extended": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_agrifield_finished": {
                        "type": "boolean",
                        "default": true
                    },
                    "hectares_displayed": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "yield_measured": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "department": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department47"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "crop_period": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropPeriod5"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "project": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Project18"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "device_uuid": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "foreman_info": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneForemanInfo3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_telemetry": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneTelemetry"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_pictures": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkdonePicture3"
                        }
                    },
                    "is_unfinished": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_invoiced": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_manual_entry": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_created": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_stopped": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_signed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdone_approval": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneApproval3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_budget": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneBudget3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility31"
                    }
                },
                "type": "object"
            },
            "RecurrenceType3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Recurrence name (needed if used as template)",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_template": {
                        "title": "True if used as template",
                        "type": "boolean",
                        "default": false
                    },
                    "recurrence_rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceRule3"
                        }
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceTypeArchive3"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RecurrenceRule3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType3"
                    },
                    "repeat_year": {
                        "title": "Repeate in yearly basis\n0 - not defined, 1 - every year, 2 - every second year .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_month": {
                        "title": "Repeate in monthly basis\n0 - not defined, 1 - every month, 2 - every second month, 3 every third month .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_week": {
                        "title": "Repeate in weekly basis\n0 - not defined, 1 - every week, 2 - every second week .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_day": {
                        "title": "Repeate in daily basis\n0 - not defined, 1 - every day, 2 - every second day, 3 - every third day ... 10 - every tenth day",
                        "type": "integer",
                        "default": 0
                    },
                    "week_of_month": {
                        "title": "Repeate on defined week of month\n0 - not defined, 1 - every first week, 2 - every second week",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_month": {
                        "title": "Repeate on defined day of month\n0 - not defined, 1 - every first day, 2 - every second day of month ... 10 - every 10th day of month",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_week": {
                        "title": "Repeate on defined day of week\n0 - not defined, 1 - every Sunday, 2 - every Monday ... 7 - every Saturday",
                        "type": "integer",
                        "default": 0
                    },
                    "custom_pattern": {
                        "title": "Custom pattern",
                        "description": "String in format \"1100110\" where \"1\" is work day and \"0\" is off day\n\"1100110\" = 2 work, 2 off, 2 work, 1 off.\nMust start with work day\nMust be \"daily\" pattern.",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RecurrenceTypeArchive3": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence15": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType3"
                    },
                    "custom_rule_json": {
                        "description": "The custom recurrence rule as the web client saved it",
                        "type": "object"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker47"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Worker48": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "color": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department48"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace18"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Department48": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department48"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace18": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department48"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession6"
                            }
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Worktype29": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department48"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield41": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department48"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer40": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department48"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson35": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer40"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Facility32": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer40"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson35"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department48"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Project19": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department48"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Shift5": {
                "properties": {
                    "pause_minutes": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Formatted time, like \"00:00:00\"",
                        "type": "string"
                    },
                    "to_time": {
                        "title": "Formatted time, like \"23:59:59\"",
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "name": {
                        "title": "Shift name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "short_name": {
                        "title": "Shift short name, Utf8 string 3 chars",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype29"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield41"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility32"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility32"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility32"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount6"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project19"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "outer_id": {
                        "title": "Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "color_code": {
                        "title": "Color in visuals",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Color"
                            }
                        ]
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage2"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department48"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workdone17": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility32"
                    }
                },
                "type": "object"
            },
            "RecurrenceType4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Recurrence name (needed if used as template)",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_template": {
                        "title": "True if used as template",
                        "type": "boolean",
                        "default": false
                    },
                    "recurrence_rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceRule4"
                        }
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceTypeArchive4"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RecurrenceRule4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType4"
                    },
                    "repeat_year": {
                        "title": "Repeate in yearly basis\n0 - not defined, 1 - every year, 2 - every second year .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_month": {
                        "title": "Repeate in monthly basis\n0 - not defined, 1 - every month, 2 - every second month, 3 every third month .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_week": {
                        "title": "Repeate in weekly basis\n0 - not defined, 1 - every week, 2 - every second week .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_day": {
                        "title": "Repeate in daily basis\n0 - not defined, 1 - every day, 2 - every second day, 3 - every third day ... 10 - every tenth day",
                        "type": "integer",
                        "default": 0
                    },
                    "week_of_month": {
                        "title": "Repeate on defined week of month\n0 - not defined, 1 - every first week, 2 - every second week",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_month": {
                        "title": "Repeate on defined day of month\n0 - not defined, 1 - every first day, 2 - every second day of month ... 10 - every 10th day of month",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_week": {
                        "title": "Repeate on defined day of week\n0 - not defined, 1 - every Sunday, 2 - every Monday ... 7 - every Saturday",
                        "type": "integer",
                        "default": 0
                    },
                    "custom_pattern": {
                        "title": "Custom pattern",
                        "description": "String in format \"1100110\" where \"1\" is work day and \"0\" is off day\n\"1100110\" = 2 work, 2 off, 2 work, 1 off.\nMust start with work day\nMust be \"daily\" pattern.",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RecurrenceTypeArchive4": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence16": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType4"
                    },
                    "custom_rule_json": {
                        "description": "The custom recurrence rule as the web client saved it",
                        "type": "object"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Rosteritem7": {
                "properties": {
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_minutes": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string"
                    },
                    "planned_stop_time": {
                        "type": "string"
                    },
                    "workdones": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "name": {
                        "title": "Rosteritem name, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Rosteritem fullname, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype29"
                    },
                    "shift": {
                        "$ref": "#/components/schemas/Shift5"
                    },
                    "description": {
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "workdone": {
                        "title": "!! NB !! Do not show this to \"classificator\" serialization groups",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workdone17"
                            }
                        ]
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield41"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility32"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility32"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer40"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson35"
                            }
                        ]
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer40"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount6"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project19"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "description": "work, - usual type, wide green color\nunavailable, - (translate to \"vacation\" if rosteritem has worker set) - slim red color\nemergency, - (translate to \"sickness\" if rosteritem has worker set) - slim red color",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType6"
                            }
                        ]
                    },
                    "roster_status": {
                        "title": "Classificator about (Worker) assignment status",
                        "description": "open, - Worker not assigned - orange color\ntaken, - Worker has created or assigned herself Open or Reopen status item: to be accepted by Boss - red color,\nassigned, - Worker assignment is accepted by Boss - green color,\nreopen, - assigned Worker has refused to do it - orange color,",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterStatus3"
                            }
                        ]
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence16"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department48"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility32"
                    }
                },
                "type": "object"
            },
            "Department49": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department49"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker49": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "color": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department49"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker49"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace19"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workplace19": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department49"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession"
                            }
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Worktype30": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department49"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield42": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department49"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer41": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department49"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson36": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer41"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility33": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer41"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson36"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department49"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Project20": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department49"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Color3": {
                "properties": {
                    "translated_name": {
                        "type": "string"
                    },
                    "code": {
                        "title": "Six digit hex code of color",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Color slug ( color.maroon -> \"Maroon\", color.fuchsia -> \"Fuchsia\")",
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Shift6": {
                "properties": {
                    "pause_minutes": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Formatted time, like \"00:00:00\"",
                        "type": "string"
                    },
                    "to_time": {
                        "title": "Formatted time, like \"23:59:59\"",
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "name": {
                        "title": "Shift name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "short_name": {
                        "title": "Shift short name, Utf8 string 3 chars",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype30"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield42"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility33"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility33"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility33"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount4"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project20"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "outer_id": {
                        "title": "Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "color_code": {
                        "title": "Color in visuals",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Color3"
                            }
                        ]
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department49"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workdone18": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility33"
                    }
                },
                "type": "object"
            },
            "RosterStatus4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RecurrenceType5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Recurrence name (needed if used as template)",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_template": {
                        "title": "True if used as template",
                        "type": "boolean",
                        "default": false
                    },
                    "recurrence_rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceRule5"
                        }
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceTypeArchive5"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RecurrenceRule5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType5"
                    },
                    "repeat_year": {
                        "title": "Repeate in yearly basis\n0 - not defined, 1 - every year, 2 - every second year .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_month": {
                        "title": "Repeate in monthly basis\n0 - not defined, 1 - every month, 2 - every second month, 3 every third month .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_week": {
                        "title": "Repeate in weekly basis\n0 - not defined, 1 - every week, 2 - every second week .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_day": {
                        "title": "Repeate in daily basis\n0 - not defined, 1 - every day, 2 - every second day, 3 - every third day ... 10 - every tenth day",
                        "type": "integer",
                        "default": 0
                    },
                    "week_of_month": {
                        "title": "Repeate on defined week of month\n0 - not defined, 1 - every first week, 2 - every second week",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_month": {
                        "title": "Repeate on defined day of month\n0 - not defined, 1 - every first day, 2 - every second day of month ... 10 - every 10th day of month",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_week": {
                        "title": "Repeate on defined day of week\n0 - not defined, 1 - every Sunday, 2 - every Monday ... 7 - every Saturday",
                        "type": "integer",
                        "default": 0
                    },
                    "custom_pattern": {
                        "title": "Custom pattern",
                        "description": "String in format \"1100110\" where \"1\" is work day and \"0\" is off day\n\"1100110\" = 2 work, 2 off, 2 work, 1 off.\nMust start with work day\nMust be \"daily\" pattern.",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RecurrenceTypeArchive5": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence17": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType5"
                    },
                    "custom_rule_json": {
                        "description": "The custom recurrence rule as the web client saved it",
                        "type": "object"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Rosteritem8": {
                "properties": {
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_minutes": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string"
                    },
                    "planned_stop_time": {
                        "type": "string"
                    },
                    "workdones": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "name": {
                        "title": "Rosteritem name, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Rosteritem fullname, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker49"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype30"
                    },
                    "shift": {
                        "$ref": "#/components/schemas/Shift6"
                    },
                    "description": {
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "workdone": {
                        "title": "!! NB !! Do not show this to \"classificator\" serialization groups",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workdone18"
                            }
                        ]
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield42"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker49"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility33"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility33"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer41"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson36"
                            }
                        ]
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer41"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount4"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project20"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "description": "work, - usual type, wide green color\nunavailable, - (translate to \"vacation\" if rosteritem has worker set) - slim red color\nemergency, - (translate to \"sickness\" if rosteritem has worker set) - slim red color",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType2"
                            }
                        ]
                    },
                    "roster_status": {
                        "title": "Classificator about (Worker) assignment status",
                        "description": "open, - Worker not assigned - orange color\ntaken, - Worker has created or assigned herself Open or Reopen status item: to be accepted by Boss - red color,\nassigned, - Worker assignment is accepted by Boss - green color,\nreopen, - assigned Worker has refused to do it - orange color,",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterStatus4"
                            }
                        ]
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence17"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department49"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility33"
                    }
                },
                "type": "object"
            },
            "Worker50": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "color": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department50"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace20"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Department50": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department50"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace20": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department50"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession6"
                            }
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Worktype31": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department50"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield43": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department50"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer42": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department50"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson37": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer42"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Facility34": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer42"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson37"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department50"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Project21": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department50"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Shift7": {
                "properties": {
                    "pause_minutes": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Formatted time, like \"00:00:00\"",
                        "type": "string"
                    },
                    "to_time": {
                        "title": "Formatted time, like \"23:59:59\"",
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "name": {
                        "title": "Shift name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "short_name": {
                        "title": "Shift short name, Utf8 string 3 chars",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype31"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield43"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility34"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility34"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility34"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount6"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project21"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "outer_id": {
                        "title": "Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "color_code": {
                        "title": "Color in visuals",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Color"
                            }
                        ]
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage2"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department50"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workdone19": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility34"
                    }
                },
                "type": "object"
            },
            "RecurrenceType6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Recurrence name (needed if used as template)",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_template": {
                        "title": "True if used as template",
                        "type": "boolean",
                        "default": false
                    },
                    "recurrence_rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceRule6"
                        }
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceTypeArchive6"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RecurrenceRule6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType6"
                    },
                    "repeat_year": {
                        "title": "Repeate in yearly basis\n0 - not defined, 1 - every year, 2 - every second year .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_month": {
                        "title": "Repeate in monthly basis\n0 - not defined, 1 - every month, 2 - every second month, 3 every third month .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_week": {
                        "title": "Repeate in weekly basis\n0 - not defined, 1 - every week, 2 - every second week .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_day": {
                        "title": "Repeate in daily basis\n0 - not defined, 1 - every day, 2 - every second day, 3 - every third day ... 10 - every tenth day",
                        "type": "integer",
                        "default": 0
                    },
                    "week_of_month": {
                        "title": "Repeate on defined week of month\n0 - not defined, 1 - every first week, 2 - every second week",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_month": {
                        "title": "Repeate on defined day of month\n0 - not defined, 1 - every first day, 2 - every second day of month ... 10 - every 10th day of month",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_week": {
                        "title": "Repeate on defined day of week\n0 - not defined, 1 - every Sunday, 2 - every Monday ... 7 - every Saturday",
                        "type": "integer",
                        "default": 0
                    },
                    "custom_pattern": {
                        "title": "Custom pattern",
                        "description": "String in format \"1100110\" where \"1\" is work day and \"0\" is off day\n\"1100110\" = 2 work, 2 off, 2 work, 1 off.\nMust start with work day\nMust be \"daily\" pattern.",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "RecurrenceTypeArchive6": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence18": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType6"
                    },
                    "custom_rule_json": {
                        "description": "The custom recurrence rule as the web client saved it",
                        "type": "object"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Rosteritem9": {
                "properties": {
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "pause_minutes": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string"
                    },
                    "planned_stop_time": {
                        "type": "string"
                    },
                    "workdones": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "name": {
                        "title": "Rosteritem name, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Rosteritem fullname, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype31"
                    },
                    "shift": {
                        "$ref": "#/components/schemas/Shift7"
                    },
                    "description": {
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "workdone": {
                        "title": "!! NB !! Do not show this to \"classificator\" serialization groups",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workdone19"
                            }
                        ]
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield43"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility34"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility34"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer42"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson37"
                            }
                        ]
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer42"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount6"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project21"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "description": "work, - usual type, wide green color\nunavailable, - (translate to \"vacation\" if rosteritem has worker set) - slim red color\nemergency, - (translate to \"sickness\" if rosteritem has worker set) - slim red color",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType6"
                            }
                        ]
                    },
                    "roster_status": {
                        "title": "Classificator about (Worker) assignment status",
                        "description": "open, - Worker not assigned - orange color\ntaken, - Worker has created or assigned herself Open or Reopen status item: to be accepted by Boss - red color,\nassigned, - Worker assignment is accepted by Boss - green color,\nreopen, - assigned Worker has refused to do it - orange color,",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterStatus3"
                            }
                        ]
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence18"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker50"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department50"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility34"
                    }
                },
                "type": "object"
            },
            "Department51": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department51"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker51": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "color": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department51"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker51"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace21"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workplace21": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department51"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession"
                            }
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Worktype32": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department51"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer43": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department51"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson38": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer43"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility35": {
                "properties": {
                    "color": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer43"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson38"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department51"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield44": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department51"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Project22": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department51"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workdone20": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility35"
                    }
                },
                "type": "object"
            },
            "Faultitem18": {
                "properties": {
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility35"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "planned_start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "FaultPlanitem14": {
                "properties": {
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem18"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionType4": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionMasterTemplate10": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionTemplate10": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_type": {
                        "$ref": "#/components/schemas/InspectionType4"
                    },
                    "inspection_master_template": {
                        "$ref": "#/components/schemas/InspectionMasterTemplate10"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionCase20": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate10"
                    },
                    "input_finished_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "planned_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem16": {
                "properties": {
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase20"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RecurrenceType7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Recurrence name (needed if used as template)",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_template": {
                        "title": "True if used as template",
                        "type": "boolean",
                        "default": false
                    },
                    "recurrence_rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceRule7"
                        }
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RecurrenceTypeArchive5"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RecurrenceRule7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType7"
                    },
                    "repeat_year": {
                        "title": "Repeate in yearly basis\n0 - not defined, 1 - every year, 2 - every second year .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_month": {
                        "title": "Repeate in monthly basis\n0 - not defined, 1 - every month, 2 - every second month, 3 every third month .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_week": {
                        "title": "Repeate in weekly basis\n0 - not defined, 1 - every week, 2 - every second week .",
                        "description": "..",
                        "type": "integer",
                        "default": 0
                    },
                    "repeat_day": {
                        "title": "Repeate in daily basis\n0 - not defined, 1 - every day, 2 - every second day, 3 - every third day ... 10 - every tenth day",
                        "type": "integer",
                        "default": 0
                    },
                    "week_of_month": {
                        "title": "Repeate on defined week of month\n0 - not defined, 1 - every first week, 2 - every second week",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_month": {
                        "title": "Repeate on defined day of month\n0 - not defined, 1 - every first day, 2 - every second day of month ... 10 - every 10th day of month",
                        "type": "integer",
                        "default": 0
                    },
                    "day_of_week": {
                        "title": "Repeate on defined day of week\n0 - not defined, 1 - every Sunday, 2 - every Monday ... 7 - every Saturday",
                        "type": "integer",
                        "default": 0
                    },
                    "custom_pattern": {
                        "title": "Custom pattern",
                        "description": "String in format \"1100110\" where \"1\" is work day and \"0\" is off day\n\"1100110\" = 2 work, 2 off, 2 work, 1 off.\nMust start with work day\nMust be \"daily\" pattern.",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence19": {
                "properties": {
                    "calendaritems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Calendaritem"
                        }
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "recurrence_type": {
                        "$ref": "#/components/schemas/RecurrenceType7"
                    },
                    "custom_rule_json": {
                        "description": "The custom recurrence rule as the web client saved it",
                        "type": "object"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Planitem22": {
                "properties": {
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "name": {
                        "title": "Planitem name, Utf8 string 255 chars. Auto generated based on plannedDurationSec, plannedStartTime, plannedStopTime",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker51"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker51"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype32"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility35"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility35"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield44"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount4"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project22"
                    },
                    "material_planned_usage_str": {
                        "type": "string"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer43"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer43"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson38"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdones": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workdone20"
                        }
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem14"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem16"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus"
                            }
                        ]
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType2"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence19"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department51"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility35"
                    }
                },
                "type": "object"
            },
            "Faultitem19": {
                "properties": {
                    "faultitem_consumer": {
                        "title": "Faultitem Consumer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FaultitemConsumer"
                            }
                        ]
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility32"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "planned_start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "additional_json": {
                        "description": "Values of the company's custom fault fields (custom_parameter_conf of the company); [] when none",
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "FaultPlanitem15": {
                "properties": {
                    "faultitem": {
                        "$ref": "#/components/schemas/Faultitem19"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "InspectionCase21": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "inspection_template": {
                        "$ref": "#/components/schemas/InspectionTemplate8"
                    },
                    "input_finished_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "planned_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "InspectionPlanitem17": {
                "properties": {
                    "inspection_case": {
                        "$ref": "#/components/schemas/InspectionCase21"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Planitem23": {
                "properties": {
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "planned_start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "name": {
                        "title": "Planitem name, Utf8 string 255 chars. Auto generated based on plannedDurationSec, plannedStartTime, plannedStopTime",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Planitem fullname, Utf8 string 255 chars. Auto generated based plannedDurationSec, plannedStartTime, plannedStopTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype29"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility32"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility32"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield41"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount6"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project19"
                    },
                    "material_planned_usage_str": {
                        "type": "string"
                    },
                    "is_draft": {
                        "type": "boolean",
                        "default": false
                    },
                    "planned_duration_hours": {
                        "type": "integer",
                        "default": 0
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer40"
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer40"
                    },
                    "customer_person": {
                        "title": "CustomerPerson",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson35"
                            }
                        ]
                    },
                    "is_executed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdones": {
                        "title": "!! NB !! OneToMany !! Do not show this to \"classificator\" serialization groups",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workdone17"
                        }
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "planned_duration_sec": {
                        "type": "integer",
                        "default": 0
                    },
                    "cost": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_planitem": {
                        "$ref": "#/components/schemas/FaultPlanitem15"
                    },
                    "inspection_planitem": {
                        "$ref": "#/components/schemas/InspectionPlanitem17"
                    },
                    "plan_status": {
                        "title": "Classificator about plan status\nis updated automatically",
                        "description": "Currently supported\nworkdone_in_progress: has Workdone AND Workdone has no end date\nworkdone_unfinished: has Workdone AND Workdone has end_date AND flag getIsUnfinished;\nworkdone_finished: has Workdone AND Workdone has end_date AND no flag getIsUnfinished;\n\nedited: no Workdone AND changed after 8h after plan creation\nrejected: no Workdone AND worker unassigned 8h after plan creation\npostponed: no Workdone AND planned start time increased after 8h after plan creation\n\nFuture\nplanned\nblocked ? manual entry from mobile app\nin_progress: has Workdone AND Workdone has no end date",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/PlanStatus2"
                            }
                        ]
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType6"
                            }
                        ]
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence16"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker48"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department48"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company6"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility32"
                    }
                },
                "type": "object"
            },
            "Department52": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department52"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker52": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department52"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker52"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup3"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace22"
                        }
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Workplace22": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department52"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession3"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "RosterType7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Name (unique)",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Translation slug",
                        "type": "string"
                    },
                    "slug_short": {
                        "type": "string"
                    },
                    "hex_color": {
                        "title": "Background color of event",
                        "type": "string"
                    },
                    "is_full_day": {
                        "title": "Event is full day event (vacation, sickness)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_background": {
                        "title": "Event is visible only for information purposes (project, partial workload, repair)",
                        "type": "boolean",
                        "default": false
                    },
                    "is_planitem": {
                        "title": "Planitem event",
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "RosterStatus5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Rosteritem10": {
                "properties": {
                    "duration_calendardays": {
                        "type": "integer"
                    },
                    "duration_workdays": {
                        "type": "integer"
                    },
                    "duration_weekends": {
                        "type": "integer"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "fullname": {
                        "title": "Rosteritem fullname, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker52"
                    },
                    "description": {
                        "type": "string"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "description": "work, - usual type, wide green color\nunavailable, - (translate to \"vacation\" if rosteritem has worker set) - slim red color\nemergency, - (translate to \"sickness\" if rosteritem has worker set) - slim red color",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType7"
                            }
                        ]
                    },
                    "roster_status": {
                        "title": "Classificator about (Worker) assignment status",
                        "description": "open, - Worker not assigned - orange color\ntaken, - Worker has created or assigned herself Open or Reopen status item: to be accepted by Boss - red color,\nassigned, - Worker assignment is accepted by Boss - green color,\nreopen, - assigned Worker has refused to do it - orange color,",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterStatus5"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department52"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department53": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department53"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department53"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker53": {
                "properties": {
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department53"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department53"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "user": {
                        "$ref": "#/components/schemas/User"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Customer44": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department53"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department53"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workdone21": {
                "properties": {
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "duration_as_text": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker53"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "approving_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "is_mobile_initiated": {
                        "type": "boolean"
                    },
                    "is_paused": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_customer": {
                        "type": "boolean",
                        "default": false
                    },
                    "customer": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer44"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "description_extended": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_agrifield_finished": {
                        "type": "boolean",
                        "default": true
                    },
                    "is_unfinished": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_invoiced": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_manual_entry": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_created": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "WorkdoneDocument": {
                "properties": {
                    "workdone": {
                        "title": "Relation with workdone. Intentionally nullable.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workdone21"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "SignedDocument": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "signing_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker53"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer44"
                    },
                    "signer_name": {
                        "type": "string"
                    },
                    "content": {
                        "type": "string"
                    },
                    "signature_str": {
                        "type": "string"
                    },
                    "related_uuid_str": {
                        "type": "string"
                    },
                    "workdone_document": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkdoneDocument"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield45": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "SoilSample": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield45"
                    },
                    "sample_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "sample_number": {
                        "type": "string"
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "lat": {
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "type": "number",
                        "format": "float"
                    },
                    "ph": {
                        "type": "number",
                        "format": "float"
                    },
                    "n": {
                        "type": "number",
                        "format": "float"
                    },
                    "p": {
                        "type": "number",
                        "format": "float"
                    },
                    "k": {
                        "type": "number",
                        "format": "float"
                    },
                    "org_c": {
                        "type": "number",
                        "format": "float"
                    },
                    "mg": {
                        "type": "number",
                        "format": "float"
                    },
                    "humus": {
                        "type": "number",
                        "format": "float"
                    },
                    "cu": {
                        "type": "number",
                        "format": "float"
                    },
                    "mn": {
                        "type": "number",
                        "format": "float"
                    },
                    "b": {
                        "type": "number",
                        "format": "float"
                    },
                    "ca": {
                        "type": "number",
                        "format": "float"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "year": {
                        "type": "integer"
                    },
                    "soil_type": {
                        "type": "string"
                    },
                    "pria_field_id": {
                        "type": "string"
                    },
                    "geom_point": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "number",
                            "format": "float"
                        }
                    }
                },
                "type": "object"
            },
            "Crop12": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AgrifieldData3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield45"
                    },
                    "start_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod4"
                    },
                    "crop": {
                        "$ref": "#/components/schemas/Crop12"
                    }
                },
                "type": "object"
            },
            "SoilSample2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield45"
                    },
                    "sample_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "sample_number": {
                        "type": "string"
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "lat": {
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "type": "number",
                        "format": "float"
                    },
                    "ph": {
                        "type": "number",
                        "format": "float"
                    },
                    "n": {
                        "type": "number",
                        "format": "float"
                    },
                    "p": {
                        "type": "number",
                        "format": "float"
                    },
                    "k": {
                        "type": "number",
                        "format": "float"
                    },
                    "org_c": {
                        "type": "number",
                        "format": "float"
                    },
                    "mg": {
                        "type": "number",
                        "format": "float"
                    },
                    "humus": {
                        "type": "number",
                        "format": "float"
                    },
                    "cu": {
                        "type": "number",
                        "format": "float"
                    },
                    "mn": {
                        "type": "number",
                        "format": "float"
                    },
                    "b": {
                        "type": "number",
                        "format": "float"
                    },
                    "ca": {
                        "type": "number",
                        "format": "float"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "year": {
                        "type": "integer"
                    },
                    "soil_type": {
                        "type": "string"
                    },
                    "pria_field_id": {
                        "type": "string"
                    },
                    "geom_point": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "number",
                            "format": "float"
                        }
                    },
                    "agrifield_datas": {
                        "title": "AgrifieldDatas",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgrifieldData3"
                        }
                    }
                },
                "type": "object"
            },
            "WorkerSummarisedWorktime": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "summarised_months": {
                        "type": "integer",
                        "default": 0
                    },
                    "norm_hours": {
                        "title": "Normhours for that period",
                        "type": "integer",
                        "default": 0
                    },
                    "norm_days": {
                        "title": "Normhours for that period",
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "TerakeReport": {
                "properties": {
                    "dataitems": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "required": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subtotals": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "summables": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "report_clock_intervals": {
                        "type": "string"
                    },
                    "report_timezone": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/Company3"
                    },
                    "params": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield46": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    }
                },
                "type": "object"
            },
            "Worktype33": {
                "properties": {
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    }
                },
                "type": "object"
            },
            "Facility36": {
                "properties": {
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workdone22": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype33"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility36"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility36"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material25": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "TransportType": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "TransportType translation slug.",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "TransportCase": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "transport_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "weight_amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "cargo_count": {
                        "type": "integer",
                        "default": 1
                    },
                    "from_point": {
                        "$ref": "#/components/schemas/Agrifield46"
                    },
                    "to_point": {
                        "$ref": "#/components/schemas/Agrifield46"
                    },
                    "workdone": {
                        "$ref": "#/components/schemas/Workdone22"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material25"
                    },
                    "description": {
                        "type": "string"
                    },
                    "transport_type": {
                        "$ref": "#/components/schemas/TransportType"
                    },
                    "weight_amount_empty": {
                        "type": "number",
                        "format": "float"
                    },
                    "weight_amount_full": {
                        "type": "number",
                        "format": "float"
                    },
                    "waybill_number": {
                        "type": "string"
                    },
                    "odometer_start": {
                        "type": "integer",
                        "default": 0
                    },
                    "odometer_stop": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Customer45": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson39"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield47"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department54"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson39": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer45"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agrifield47": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory3"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer45"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department54"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department54": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department54"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker54": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department54"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker54"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup3"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace23"
                        }
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Workplace23": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department54"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession3"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Worktype34": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department54"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility37": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType"
                            }
                        ]
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield47"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer45"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson39"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department54"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workdone23": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker54"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype34"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility37"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility37"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "TransportType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "TransportType translation slug.",
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "TransportCase2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "transport_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "weight_amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "cargo_count": {
                        "type": "integer",
                        "default": 1
                    },
                    "from_point": {
                        "$ref": "#/components/schemas/Agrifield47"
                    },
                    "to_point": {
                        "$ref": "#/components/schemas/Agrifield47"
                    },
                    "workdone": {
                        "$ref": "#/components/schemas/Workdone23"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker54"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material"
                    },
                    "description": {
                        "type": "string"
                    },
                    "transport_type": {
                        "$ref": "#/components/schemas/TransportType2"
                    },
                    "weight_amount_empty": {
                        "type": "number",
                        "format": "float"
                    },
                    "weight_amount_full": {
                        "type": "number",
                        "format": "float"
                    },
                    "waybill_number": {
                        "type": "string"
                    },
                    "odometer_start": {
                        "type": "integer",
                        "default": 0
                    },
                    "odometer_stop": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Customer46": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson40"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield48"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department55"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson40": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer46"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agrifield48": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory3"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer46"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department55"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department55": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department55"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker55": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department55"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker55"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup3"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace24"
                        }
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Workplace24": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department55"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession3"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Worktype35": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department55"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility38": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType"
                            }
                        ]
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield48"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer46"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson40"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department55"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workdone24": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker55"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype35"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility38"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility38"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "TransportCase3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "transport_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "weight_amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "cargo_count": {
                        "type": "integer",
                        "default": 1
                    },
                    "from_point": {
                        "$ref": "#/components/schemas/Agrifield48"
                    },
                    "to_point": {
                        "$ref": "#/components/schemas/Agrifield48"
                    },
                    "workdone": {
                        "$ref": "#/components/schemas/Workdone24"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker55"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material"
                    },
                    "description": {
                        "type": "string"
                    },
                    "transport_type": {
                        "$ref": "#/components/schemas/TransportType2"
                    },
                    "weight_amount_empty": {
                        "type": "number",
                        "format": "float"
                    },
                    "weight_amount_full": {
                        "type": "number",
                        "format": "float"
                    },
                    "waybill_number": {
                        "type": "string"
                    },
                    "odometer_start": {
                        "type": "integer",
                        "default": 0
                    },
                    "odometer_stop": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Department56": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "WorkerGroup4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "WorkdayRule": {
                "properties": {
                    "pause_minutes": {
                        "type": "string"
                    },
                    "duration_minutes": {
                        "type": "string"
                    },
                    "min_duration_minutes": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department56"
                            }
                        ]
                    },
                    "worker_group": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkerGroup4"
                            }
                        ]
                    },
                    "duration_seconds": {
                        "title": "Duration of daily work",
                        "type": "integer"
                    },
                    "min_duration_seconds": {
                        "title": "Minimum duration of work",
                        "type": "integer"
                    },
                    "pause_seconds": {
                        "title": "Duration of pause",
                        "type": "integer"
                    },
                    "is_gaps_filled": {
                        "type": "boolean",
                        "default": false
                    },
                    "start_date": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Collection": {
                "type": "object"
            },
            "Worktype36": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "pria_uuid": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield49": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Material26": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "material_config": {
                        "title": "One Config has One Material.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialConfig3"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialUsage4": {
                "properties": {
                    "harvest": {
                        "$ref": "#/components/schemas/Harvest"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material26"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield49"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_material_report": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_inbound": {
                        "title": "Inbound = production/buy, Outbound = cost/sell",
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Planitem24": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility26"
                    }
                },
                "type": "object"
            },
            "Rosteritem11": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility26"
                    }
                },
                "type": "object"
            },
            "Profession7": {
                "properties": {
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace25": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department42"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession7"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Workdone25": {
                "properties": {
                    "is_transport_work": {
                        "type": "boolean"
                    },
                    "is_silage_transport_work": {
                        "type": "boolean"
                    },
                    "location_history": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pause_minutes": {
                        "type": "integer"
                    },
                    "roster_type": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "paused_from_timestamp": {
                        "type": "integer"
                    },
                    "duration_as_text": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Get company",
                        "description": "This is needed for RestBaseController->hasRightToModify, WorkdoneCreator",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "silage_transports": {
                        "title": "Get silageTransports.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Collection"
                            }
                        ]
                    },
                    "transport_cases": {
                        "title": "Get transportCases.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Collection"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker41"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype36"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility26"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility_start_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "main_facility_stop_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility26"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "agrifield": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield49"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "kilometer_start": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "kilometer_stop": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fuel_consumption": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker41"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "approving_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pria_sync_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "hectares_served": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "is_mobile_initiated": {
                        "type": "boolean"
                    },
                    "start_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "start_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialUsage4"
                        }
                    },
                    "cost_account": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CostAccount7"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_paused": {
                        "type": "boolean",
                        "default": false
                    },
                    "planitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Planitem24"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "rosteritem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Rosteritem11"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fuel_filling": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FuelFilling5"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "faultitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Faultitem16"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase18"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_customer": {
                        "type": "boolean",
                        "default": false
                    },
                    "customer": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer34"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "description_extended": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_agrifield_finished": {
                        "type": "boolean",
                        "default": true
                    },
                    "hectares_displayed": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "yield_measured": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "department": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department42"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "crop_period": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropPeriod6"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "project": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Project14"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "device_uuid": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "foreman_info": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneForemanInfo2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_telemetry": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneTelemetry"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workplace": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workplace25"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_pictures": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkdonePicture2"
                        }
                    },
                    "is_unfinished": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_invoiced": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_manual_entry": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_created": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_stopped": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_signed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdone_approval": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneApproval2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_budget": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneBudget2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility26"
                    }
                },
                "type": "object"
            },
            "Department57": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department57"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker56": {
                "properties": {
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department57"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker56"
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType4"
                            }
                        ]
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup3"
                        }
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace26"
                        }
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "TimeTrackingType4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Workplace26": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department57"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession3"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Worktype37": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "pria_uuid": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department57"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer47": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson41"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield50"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department57"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson41": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer47"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agrifield50": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory3"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer47"
                    },
                    "geo_item": {
                        "$ref": "#/components/schemas/GeoItem3"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department57"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "GeoItem3": {
                "properties": {
                    "geojson": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "simplified_geojson": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "centroid_point": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "number",
                            "format": "float"
                        }
                    },
                    "centroid_lat": {
                        "type": "number",
                        "format": "float"
                    },
                    "centroid_lng": {
                        "type": "number",
                        "format": "float"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility39": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType"
                            }
                        ]
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield50"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer47"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson41"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department57"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CropLayerType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AgreementType translation slug.",
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "HarvestType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AgreementType translation slug.",
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Harvest2": {
                "properties": {
                    "id": {
                        "title": "SilageMaterial Id",
                        "type": "integer"
                    },
                    "crop_layer_type": {
                        "title": "CropLayerType",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropLayerType2"
                            }
                        ]
                    },
                    "harvest_type": {
                        "title": "Harvest Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/HarvestType2"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Material27": {
                "properties": {
                    "name_extended": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "title": "Material name. Required.",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Material fullname, calculated value",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "amount_category": {
                        "title": "Amount category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AmountCategory"
                            }
                        ]
                    },
                    "calc_amount_category": {
                        "$ref": "#/components/schemas/AmountCategory"
                    },
                    "material_category": {
                        "title": "Material category. Required.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialCategory"
                            }
                        ]
                    },
                    "is_material": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_product": {
                        "type": "boolean",
                        "default": false
                    },
                    "material_config": {
                        "title": "One Config has One Material.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/MaterialConfig3"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialUsage5": {
                "properties": {
                    "harvest": {
                        "$ref": "#/components/schemas/Harvest2"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material27"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield50"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_material_report": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_inbound": {
                        "title": "Inbound = production/buy, Outbound = cost/sell",
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Planitem25": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department57"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility39"
                    }
                },
                "type": "object"
            },
            "Rosteritem12": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department57"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility39"
                    }
                },
                "type": "object"
            },
            "FuelFilling7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Faultitem20": {
                "properties": {
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fault_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "resolved_description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "severity": {
                        "type": "integer",
                        "default": 2
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "InspectionCase22": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "status": {
                        "title": "Inspection Status",
                        "description": "Status values:\n0 - new (planned) status\n1 - inspection soon ( in 500 km OR 50 h OR 10 days )\n2 - inspection time (km, enginehour) arrived\n3 - inspection in progress\n4 - inspection closed with errors\n5 - inspection closed with great success\n6 - pre-usage checklist filled",
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "ProjectWorker7": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker56"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "ProjectWorktype7": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype37"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "ProjectFacility7": {
                "properties": {
                    "resource": {
                        "title": "Get Resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility39"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Project23": {
                "properties": {
                    "planned_work_hours": {
                        "type": "number",
                        "format": "double"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_work_seconds": {
                        "type": "integer"
                    },
                    "planned_budget": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "project_workers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorker7"
                        }
                    },
                    "project_worktypes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorktype7"
                        }
                    },
                    "project_facilities": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectFacility7"
                        }
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department57"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "WorkdoneForemanInfo4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "start_foreman": {
                        "$ref": "#/components/schemas/Worker56"
                    },
                    "start_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "stop_foreman": {
                        "$ref": "#/components/schemas/Worker56"
                    },
                    "stop_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Workdone26": {
                "properties": {
                    "is_transport_work": {
                        "type": "boolean"
                    },
                    "is_silage_transport_work": {
                        "type": "boolean"
                    },
                    "location_history": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pause_minutes": {
                        "type": "integer"
                    },
                    "roster_type": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "paused_from_timestamp": {
                        "type": "integer"
                    },
                    "duration_as_text": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Get company",
                        "description": "This is needed for RestBaseController->hasRightToModify, WorkdoneCreator",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "silage_transports": {
                        "title": "Get silageTransports.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Collection"
                            }
                        ]
                    },
                    "transport_cases": {
                        "title": "Get transportCases.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Collection"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker56"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype37"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility39"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility_start_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "main_facility_stop_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility39"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "agrifield": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield50"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "kilometer_start": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "kilometer_stop": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fuel_consumption": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker56"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "approving_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pria_sync_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "hectares_served": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "is_mobile_initiated": {
                        "type": "boolean"
                    },
                    "start_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "start_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialUsage5"
                        }
                    },
                    "cost_account": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CostAccount3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_paused": {
                        "type": "boolean",
                        "default": false
                    },
                    "planitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Planitem25"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "rosteritem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Rosteritem12"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fuel_filling": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FuelFilling7"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "faultitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Faultitem20"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase22"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_customer": {
                        "type": "boolean",
                        "default": false
                    },
                    "customer": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer47"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "description_extended": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_agrifield_finished": {
                        "type": "boolean",
                        "default": true
                    },
                    "hectares_displayed": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "yield_measured": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "department": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department57"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "crop_period": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropPeriod2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "project": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Project23"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "device_uuid": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "foreman_info": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneForemanInfo4"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_telemetry": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneTelemetry"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workplace": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workplace26"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_geo_track": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkdoneGeoTrack"
                        }
                    },
                    "workdone_pictures": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkdonePicture4"
                        }
                    },
                    "workdone_device_location": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneDeviceLocation"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_unfinished": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_invoiced": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_manual_entry": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_created": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_stopped": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_signed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdone_approval": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneApproval4"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_budget": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneBudget4"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility39"
                    }
                },
                "type": "object"
            },
            "WorkdoneGeoTrack": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "workdone": {
                        "$ref": "#/components/schemas/Workdone26"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield50"
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "enginehours": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "kilometers": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fuel_consumption": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fuel_jumps": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "json_content": {
                        "type": "string"
                    },
                    "calculated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "DeviceLocation5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "device_uuid": {
                        "type": "string",
                        "default": ""
                    },
                    "gps_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "latitude": {
                        "title": "Doctrine hydrates a decimal as a string (\"58.36494\"); serialized and read as a float.",
                        "type": "number",
                        "format": "float",
                        "default": "0.00000"
                    },
                    "longitude": {
                        "type": "number",
                        "format": "float",
                        "default": "0.00000"
                    },
                    "accuracy": {
                        "title": "Horizontal accuracy radius in metres as the device reported it; null when it did not.",
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "Fileitem6": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#fileitems as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "original_name": {
                        "type": "string"
                    },
                    "mime_type": {
                        "type": "string"
                    },
                    "is_uploaded": {
                        "type": "boolean",
                        "default": false
                    },
                    "category_key": {
                        "type": "string"
                    },
                    "file_size": {
                        "type": "integer",
                        "default": 0
                    },
                    "device_uuid": {
                        "type": "string"
                    },
                    "created_at_location": {
                        "$ref": "#/components/schemas/DeviceLocation5"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "WorkdonePicture4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "fileitem": {
                        "$ref": "#/components/schemas/Fileitem6"
                    }
                },
                "type": "object"
            },
            "WorkdoneDeviceLocation": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "json_content": {
                        "type": "string"
                    },
                    "calculated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "count_points": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "WorkdoneApproval4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "client_worker": {
                        "$ref": "#/components/schemas/Worker56"
                    },
                    "client_meta_json": {
                        "title": "Meta data about approval: IP, e-mail (also for identifying \"unauthenticated\" e-mail approver)",
                        "type": "string"
                    },
                    "client_comment": {
                        "type": "string"
                    },
                    "client_response_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "client_approving_time": {
                        "title": "if not null then workdone is approved by client",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Currency5": {
                "properties": {
                    "code": {
                        "title": "ISO 4217 code of currency",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Currency slug",
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "WorkdoneBudget4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "price": {
                        "type": "number",
                        "format": "float"
                    },
                    "price_currency_code": {
                        "$ref": "#/components/schemas/Currency5"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Department58": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department58"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker57": {
                "properties": {
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department58"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker57"
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType4"
                            }
                        ]
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup3"
                        }
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace27"
                        }
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Workplace27": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department58"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession3"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Worktype38": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "pria_uuid": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department58"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer48": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson42"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield51"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department58"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson42": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer48"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agrifield51": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory3"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer48"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department58"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility40": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType"
                            }
                        ]
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield51"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer48"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson42"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department58"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialUsage6": {
                "properties": {
                    "harvest": {
                        "$ref": "#/components/schemas/Harvest2"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material27"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield51"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_material_report": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_inbound": {
                        "title": "Inbound = production/buy, Outbound = cost/sell",
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Planitem26": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department58"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility40"
                    }
                },
                "type": "object"
            },
            "Rosteritem13": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department58"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility40"
                    }
                },
                "type": "object"
            },
            "ProjectWorker8": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker57"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "ProjectWorktype8": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype38"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "ProjectFacility8": {
                "properties": {
                    "resource": {
                        "title": "Get Resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility40"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Project24": {
                "properties": {
                    "planned_work_hours": {
                        "type": "number",
                        "format": "double"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_work_seconds": {
                        "type": "integer"
                    },
                    "planned_budget": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "project_workers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorker8"
                        }
                    },
                    "project_worktypes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorktype8"
                        }
                    },
                    "project_facilities": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectFacility8"
                        }
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department58"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "WorkdoneForemanInfo5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "start_foreman": {
                        "$ref": "#/components/schemas/Worker57"
                    },
                    "start_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "stop_foreman": {
                        "$ref": "#/components/schemas/Worker57"
                    },
                    "stop_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "DeviceLocation6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "Fileitem7": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#fileitems as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "original_name": {
                        "type": "string"
                    },
                    "mime_type": {
                        "type": "string"
                    },
                    "is_uploaded": {
                        "type": "boolean",
                        "default": false
                    },
                    "category_key": {
                        "type": "string"
                    },
                    "file_size": {
                        "type": "integer",
                        "default": 0
                    },
                    "device_uuid": {
                        "type": "string"
                    },
                    "created_at_location": {
                        "$ref": "#/components/schemas/DeviceLocation6"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "WorkdonePicture5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "fileitem": {
                        "$ref": "#/components/schemas/Fileitem7"
                    }
                },
                "type": "object"
            },
            "WorkdoneApproval5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "client_worker": {
                        "$ref": "#/components/schemas/Worker57"
                    },
                    "client_meta_json": {
                        "title": "Meta data about approval: IP, e-mail (also for identifying \"unauthenticated\" e-mail approver)",
                        "type": "string"
                    },
                    "client_comment": {
                        "type": "string"
                    },
                    "client_response_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "client_approving_time": {
                        "title": "if not null then workdone is approved by client",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Workdone27": {
                "properties": {
                    "is_transport_work": {
                        "type": "boolean"
                    },
                    "is_silage_transport_work": {
                        "type": "boolean"
                    },
                    "location_history": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pause_minutes": {
                        "type": "integer"
                    },
                    "roster_type": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "paused_from_timestamp": {
                        "type": "integer"
                    },
                    "duration_as_text": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Get company",
                        "description": "This is needed for RestBaseController->hasRightToModify, WorkdoneCreator",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "silage_transports": {
                        "title": "Get silageTransports.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Collection"
                            }
                        ]
                    },
                    "transport_cases": {
                        "title": "Get transportCases.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Collection"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker57"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype38"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility40"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility_start_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "main_facility_stop_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility40"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "agrifield": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield51"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "kilometer_start": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "kilometer_stop": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fuel_consumption": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker57"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "approving_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pria_sync_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "hectares_served": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "is_mobile_initiated": {
                        "type": "boolean"
                    },
                    "start_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "start_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialUsage6"
                        }
                    },
                    "cost_account": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CostAccount3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_paused": {
                        "type": "boolean",
                        "default": false
                    },
                    "planitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Planitem26"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "rosteritem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Rosteritem13"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fuel_filling": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FuelFilling7"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "faultitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Faultitem20"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase22"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_customer": {
                        "type": "boolean",
                        "default": false
                    },
                    "customer": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer48"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "description_extended": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_agrifield_finished": {
                        "type": "boolean",
                        "default": true
                    },
                    "hectares_displayed": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "yield_measured": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "department": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department58"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "crop_period": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropPeriod2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "project": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Project24"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "device_uuid": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "foreman_info": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneForemanInfo5"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_telemetry": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneTelemetry"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workplace": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workplace27"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_pictures": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkdonePicture5"
                        }
                    },
                    "is_unfinished": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_invoiced": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_manual_entry": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_created": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_stopped": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_signed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdone_approval": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneApproval5"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_budget": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneBudget4"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility40"
                    }
                },
                "type": "object"
            },
            "Department59": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department59"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker58": {
                "properties": {
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department59"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker58"
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType4"
                            }
                        ]
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup3"
                        }
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "user": {
                        "$ref": "#/components/schemas/User4"
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace28"
                        }
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "User4": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "email_verified": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Workplace28": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department59"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession3"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Worktype39": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "pria_uuid": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department59"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer49": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson43"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield52"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department59"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson43": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer49"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agrifield52": {
                "properties": {
                    "__field_number_sortable": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "water_protection_area_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "field_usage_description": {
                        "type": "string"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory3"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer49"
                    },
                    "_geom_updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department59"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility41": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType"
                            }
                        ]
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield52"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer49"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson43"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department59"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialUsage7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material27"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield52"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_material_report": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_inbound": {
                        "title": "Inbound = production/buy, Outbound = cost/sell",
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Planitem27": {
                "properties": {
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department59"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility41"
                    }
                },
                "type": "object"
            },
            "Rosteritem14": {
                "properties": {
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department59"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility41"
                    }
                },
                "type": "object"
            },
            "ProjectWorker9": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker58"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "ProjectWorktype9": {
                "properties": {
                    "resource": {
                        "title": "Get resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype39"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "ProjectFacility9": {
                "properties": {
                    "resource": {
                        "title": "Get Resource.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility41"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Project25": {
                "properties": {
                    "planned_work_hours": {
                        "type": "number",
                        "format": "double"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Project id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Project name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "planned_work_seconds": {
                        "type": "integer"
                    },
                    "planned_budget": {
                        "type": "integer"
                    },
                    "description": {
                        "type": "string"
                    },
                    "project_workers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorker9"
                        }
                    },
                    "project_worktypes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectWorktype9"
                        }
                    },
                    "project_facilities": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProjectFacility9"
                        }
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department59"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "WorkdoneForemanInfo6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "start_foreman": {
                        "$ref": "#/components/schemas/Worker58"
                    },
                    "start_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "stop_foreman": {
                        "$ref": "#/components/schemas/Worker58"
                    },
                    "stop_timestamp": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "WorkdoneApproval6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "client_worker": {
                        "$ref": "#/components/schemas/Worker58"
                    },
                    "client_meta_json": {
                        "title": "Meta data about approval: IP, e-mail (also for identifying \"unauthenticated\" e-mail approver)",
                        "type": "string"
                    },
                    "client_comment": {
                        "type": "string"
                    },
                    "client_response_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "client_approving_time": {
                        "title": "if not null then workdone is approved by client",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Workdone28": {
                "properties": {
                    "location_history": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pause_minutes": {
                        "type": "integer"
                    },
                    "roster_type": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "paused_from_timestamp": {
                        "type": "integer"
                    },
                    "duration_as_text": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Get company",
                        "description": "This is needed for RestBaseController->hasRightToModify, WorkdoneCreator",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker58"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype39"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility41"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility_start_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "main_facility_stop_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility41"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "agrifield": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield52"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "kilometer_start": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "kilometer_stop": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fuel_consumption": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker58"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "approving_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pria_sync_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "hectares_served": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "is_mobile_initiated": {
                        "type": "boolean"
                    },
                    "start_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "start_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialUsage7"
                        }
                    },
                    "cost_account": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CostAccount3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_paused": {
                        "type": "boolean",
                        "default": false
                    },
                    "planitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Planitem27"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "rosteritem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Rosteritem14"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fuel_filling": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FuelFilling7"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "faultitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Faultitem20"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase22"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_customer": {
                        "type": "boolean",
                        "default": false
                    },
                    "customer": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer49"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "description_extended": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_agrifield_finished": {
                        "type": "boolean",
                        "default": true
                    },
                    "hectares_displayed": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "yield_measured": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "department": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department59"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "crop_period": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropPeriod2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "project": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Project25"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "device_uuid": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "foreman_info": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneForemanInfo6"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_telemetry": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneTelemetry"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workplace": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workplace28"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_pictures": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkdonePicture5"
                        }
                    },
                    "workdone_device_location": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneDeviceLocation"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_unfinished": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_invoiced": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_manual_entry": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_created": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_stopped": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_signed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdone_approval": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneApproval6"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_budget": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneBudget4"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility41"
                    }
                },
                "type": "object"
            },
            "Department60": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department60"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department60"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker59": {
                "properties": {
                    "company_type2": {
                        "$ref": "#/components/schemas/CompanyType2"
                    },
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "crop_periods_visible_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pria_payee_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "agrifield_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "role_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "roles_array": {
                        "title": "Worker app / My Profile uses this",
                        "type": "object",
                        "additionalProperties": true
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department60"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department60"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession8"
                            }
                        ]
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "rolecollection": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Role"
                        }
                    },
                    "facility": {
                        "title": "Workers main facility",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility42"
                            }
                        ]
                    },
                    "subordinates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worker59"
                        }
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "company_type": {
                        "title": "If workers type is different from Companies generic type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyType2"
                            }
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType5"
                            }
                        ]
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup"
                        }
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "factory_credentials": {
                        "$ref": "#/components/schemas/WorkerFactoryCredentials"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "user": {
                        "$ref": "#/components/schemas/User5"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility2"
                            }
                        ]
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worktype": {
                        "title": "Workers default workype",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype40"
                            }
                        ]
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace29"
                        }
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_personal_code_verified": {
                        "type": "boolean",
                        "default": false
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent5"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProfessionArchive": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Profession8": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProfessionArchive"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Role": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CalendarEvent5": {
                "properties": {
                    "id": {
                        "title": "Calendar Event id in Terake",
                        "type": "integer"
                    },
                    "event_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "calendar_event_type": {
                        "$ref": "#/components/schemas/CalendarEventType"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Customer50": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department60"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson44"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield53"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department60"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson44": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer50"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield53": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department60"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory7"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer50"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department60"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility42": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department60"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType4"
                            }
                        ]
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent5"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield53"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer50"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson44"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department60"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "TimeTrackingType5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "WorkerFactoryCredentials": {
                "properties": {
                    "factory_pin": {
                        "type": "string"
                    },
                    "factory_rfid": {
                        "type": "string"
                    },
                    "factory_nfc": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "User5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "personal_code_country": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fullname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "firstname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "lastname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email_verified": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype40": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department60"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department60"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace29": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department60"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession8"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker59"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Department61": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department61"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department61"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker60": {
                "properties": {
                    "company_type2": {
                        "$ref": "#/components/schemas/CompanyType2"
                    },
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "crop_periods_visible_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pria_payee_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "agrifield_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "role_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "roles_array": {
                        "title": "Worker app / My Profile uses this",
                        "type": "object",
                        "additionalProperties": true
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department61"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department61"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession9"
                            }
                        ]
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "rolecollection": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Role"
                        }
                    },
                    "facility": {
                        "title": "Workers main facility",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility43"
                            }
                        ]
                    },
                    "subordinates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worker60"
                        }
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "company_type": {
                        "title": "If workers type is different from Companies generic type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyType2"
                            }
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType5"
                            }
                        ]
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "factory_credentials": {
                        "$ref": "#/components/schemas/WorkerFactoryCredentials"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "user": {
                        "$ref": "#/components/schemas/User6"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility2"
                            }
                        ]
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worktype": {
                        "title": "Workers default workype",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype41"
                            }
                        ]
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace30"
                        }
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_personal_code_verified": {
                        "type": "boolean",
                        "default": false
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent6"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProfessionArchive2": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Profession9": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProfessionArchive2"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility43": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department61"
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department61"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "User6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "personal_code_country": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fullname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "firstname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "lastname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email_verified": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype41": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department61"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department61"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace30": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department61"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession9"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "CalendarEvent6": {
                "properties": {
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker60"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "WorkerFactoryCredentials2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "factory_pin": {
                        "type": "string"
                    },
                    "factory_rfid": {
                        "type": "string"
                    },
                    "factory_nfc": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosterVisibility3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worker61": {
                "properties": {
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department62": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department62"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company10"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department62"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CompanyType3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "OvertimeHours": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "period_name_slug": {
                        "type": "string"
                    },
                    "calculating_order": {
                        "type": "integer"
                    },
                    "start_duration": {
                        "title": "8 hours = 28800 seconds",
                        "type": "integer"
                    },
                    "stop_duration": {
                        "title": "8 hours = 28800 seconds",
                        "type": "integer"
                    },
                    "time_weight_percent": {
                        "title": "100 = norm hours, 150 (%) overtime 1, 200, (%) overtime 2, etc",
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "DayPart": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "start_seconds": {
                        "type": "integer"
                    },
                    "stop_seconds": {
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "Country3": {
                "properties": {
                    "code": {
                        "title": "ISO 3361-1 Alpha-2 code of country",
                        "type": "string"
                    },
                    "name": {
                        "title": "Country short name in English",
                        "type": "string"
                    },
                    "local_name": {
                        "title": "Country short name in local language and local alphabet",
                        "type": "string"
                    },
                    "language_code": {
                        "title": "Default language code for that Country.",
                        "type": "string"
                    },
                    "currency_code": {
                        "title": "Default currency for that Country",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Currency3"
                            }
                        ]
                    },
                    "overtime_hours": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/OvertimeHours"
                        }
                    },
                    "day_parts": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DayPart"
                        }
                    }
                },
                "type": "object"
            },
            "CompanyLanguages2": {
                "properties": {
                    "additional_languages": {
                        "type": "string"
                    },
                    "translation_languages": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Company10": {
                "properties": {
                    "is_setup": {
                        "title": "true if Company setup is finished",
                        "type": "boolean"
                    },
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "name": {
                        "title": "Company name",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company_type": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyType3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "country_code": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Country3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "language_code": {
                        "title": "Default language code. In this language informational e-mails are sent.",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "currency_code": {
                        "title": "Default currency in monetary fields and calculations",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Currency3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "roster_visibility": {
                        "title": "Default Roster Visibility type for new workers",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "send_welcome_letter": {
                        "title": "Whether new workers with e-mail set must get informational e-mail",
                        "type": "boolean",
                        "default": true
                    },
                    "workday_length": {
                        "title": "Workday norm hours length",
                        "type": "number",
                        "format": "float",
                        "default": "8.00"
                    },
                    "overtime_length": {
                        "title": "Workday overtime hours length",
                        "type": "number",
                        "format": "float",
                        "default": "4.00"
                    },
                    "permanent_delete_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "company_languages": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyLanguages2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "test_period_days": {
                        "type": "integer",
                        "default": 30
                    },
                    "is_invoice_paid": {
                        "title": "If false, shows bink ribbon \"Invoice is not paid\"",
                        "type": "boolean",
                        "default": true
                    },
                    "is_invoice_bad": {
                        "title": "If true, shows big red flag \"Please immediately pay, otherwise your access will be limited\"",
                        "type": "boolean",
                        "default": false
                    },
                    "is_lastname_first": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_creation_enabled": {
                        "type": "boolean",
                        "default": true
                    },
                    "is_regnr_verified": {
                        "type": "boolean",
                        "default": false
                    },
                    "upload_max_filesize": {
                        "type": "integer",
                        "default": 2
                    },
                    "departments": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Department62"
                        }
                    },
                    "custom_parameter_conf": {
                        "description": "Custom form fields per entity kind, e.g. {\"faultitem\": [{\"name\", \"title\", \"value_type\", ...}]}",
                        "type": [
                            "object",
                            "null"
                        ]
                    }
                },
                "type": "object"
            },
            "Role2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "privilege": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "User7": {
                "properties": {
                    "activated_worker": {
                        "title": "For obtaining default worker",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker62"
                            }
                        ]
                    },
                    "has_password": {
                        "title": "For obtaining default worker",
                        "type": "boolean"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fullname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "firstname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "lastname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email_verified": {
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Profession10": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company10"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace31": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department62"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession10"
                            }
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Worker62": {
                "properties": {
                    "allowed_companies": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "role_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "privileges": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "roles_array": {
                        "title": "Worker app / My Profile uses this",
                        "type": "object",
                        "additionalProperties": true
                    },
                    "rolestring": {
                        "title": "Workfields app uses this for everything",
                        "type": "string"
                    },
                    "department_obj": {
                        "$ref": "#/components/schemas/Department62"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department62"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department62"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company10"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "rolecollection": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Role2"
                        }
                    },
                    "apikey": {
                        "title": "Workers Api key",
                        "type": "string"
                    },
                    "user": {
                        "$ref": "#/components/schemas/User7"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility3"
                            }
                        ]
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace31"
                        }
                    },
                    "is_personal_code_verified": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Department63": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department63"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department63"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "ProfessionArchive3": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Profession11": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProfessionArchive3"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worker63": {
                "properties": {
                    "roles_array": {
                        "title": "Worker app / My Profile uses this",
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department63"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department63"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession11"
                            }
                        ]
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker63"
                    },
                    "facility": {
                        "title": "Workers main facility",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility44"
                            }
                        ]
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType5"
                            }
                        ]
                    },
                    "factory_credentials": {
                        "$ref": "#/components/schemas/WorkerFactoryCredentials3"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_personal_code_verified": {
                        "type": "boolean",
                        "default": false
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility44": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department63"
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department63"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "WorkerFactoryCredentials3": {
                "properties": {
                    "factory_pin": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department64": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department64"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company11"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department64"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Currency6": {
                "properties": {
                    "code": {
                        "title": "ISO 4217 code of currency",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Currency slug",
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Country4": {
                "properties": {
                    "code": {
                        "title": "ISO 3361-1 Alpha-2 code of country",
                        "type": "string"
                    },
                    "name": {
                        "title": "Country short name in English",
                        "type": "string"
                    },
                    "local_name": {
                        "title": "Country short name in local language and local alphabet",
                        "type": "string"
                    },
                    "language_code": {
                        "title": "Default language code for that Country.",
                        "type": "string"
                    },
                    "currency_code": {
                        "title": "Default currency for that Country",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Currency6"
                            }
                        ]
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Company11": {
                "properties": {
                    "id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "name": {
                        "title": "Company name",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "company_type": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyType2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "country_code": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Country4"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worker64": {
                "properties": {
                    "company_type2": {
                        "$ref": "#/components/schemas/CompanyType2"
                    },
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "crop_periods_visible_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pria_payee_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "agrifield_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "role_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "roles_array": {
                        "title": "Worker app / My Profile uses this",
                        "type": "object",
                        "additionalProperties": true
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department64"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department64"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company11"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession12"
                            }
                        ]
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "rolecollection": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Role"
                        }
                    },
                    "facility": {
                        "title": "Workers main facility",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility45"
                            }
                        ]
                    },
                    "subordinates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worker64"
                        }
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "company_type": {
                        "title": "If workers type is different from Companies generic type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyType2"
                            }
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType5"
                            }
                        ]
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup"
                        }
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "factory_credentials": {
                        "$ref": "#/components/schemas/WorkerFactoryCredentials"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "user": {
                        "$ref": "#/components/schemas/User8"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility2"
                            }
                        ]
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worktype": {
                        "title": "Workers default workype",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype42"
                            }
                        ]
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace32"
                        }
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_personal_code_verified": {
                        "type": "boolean",
                        "default": false
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent7"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProfessionArchive4": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company11"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Profession12": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProfessionArchive4"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company11"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "FacilityType5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "inspection_master_template": {
                        "$ref": "#/components/schemas/InspectionMasterTemplate"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company11"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CalendarEvent7": {
                "properties": {
                    "id": {
                        "title": "Calendar Event id in Terake",
                        "type": "integer"
                    },
                    "event_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "calendar_event_type": {
                        "$ref": "#/components/schemas/CalendarEventType"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Crop13": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "base_name": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "hex_color": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company11"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer51": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department64"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson45"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield54"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department64"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company11"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson45": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer51"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield54": {
                "properties": {
                    "__field_number_sortable": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department64"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "water_protection_area_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "field_usage_description": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory7"
                    },
                    "crop": {
                        "$ref": "#/components/schemas/Crop13"
                    },
                    "crop_variety": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer51"
                    },
                    "location_area": {
                        "$ref": "#/components/schemas/LocationArea2"
                    },
                    "is_water_protection_active": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department64"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company11"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility45": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department64"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company11"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType5"
                            }
                        ]
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent7"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield54"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer51"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson45"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department64"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "User8": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "personal_code_country": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fullname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "firstname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "lastname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email_verified": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype42": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department64"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department64"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company11"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace32": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department64"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession12"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker64"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Department65": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department65"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department65"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker65": {
                "properties": {
                    "company_type2": {
                        "$ref": "#/components/schemas/CompanyType2"
                    },
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "crop_periods_visible_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pria_payee_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "agrifield_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "role_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "roles_array": {
                        "title": "Worker app / My Profile uses this",
                        "type": "object",
                        "additionalProperties": true
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department65"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department65"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession13"
                            }
                        ]
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "rolecollection": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Role"
                        }
                    },
                    "facility": {
                        "title": "Workers main facility",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility46"
                            }
                        ]
                    },
                    "subordinates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worker65"
                        }
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "company_type": {
                        "title": "If workers type is different from Companies generic type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyType2"
                            }
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType5"
                            }
                        ]
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "factory_credentials": {
                        "$ref": "#/components/schemas/WorkerFactoryCredentials"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "user": {
                        "$ref": "#/components/schemas/User9"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility2"
                            }
                        ]
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worktype": {
                        "title": "Workers default workype",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype43"
                            }
                        ]
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace33"
                        }
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_personal_code_verified": {
                        "type": "boolean",
                        "default": false
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent8"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProfessionArchive5": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Profession13": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProfessionArchive5"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CalendarEventType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "object_code": {
                        "$ref": "#/components/schemas/TerakeObjectType"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CalendarEvent8": {
                "properties": {
                    "id": {
                        "title": "Calendar Event id in Terake",
                        "type": "integer"
                    },
                    "event_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "calendar_event_type": {
                        "$ref": "#/components/schemas/CalendarEventType2"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility46": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department65"
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent8"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department65"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "User9": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "personal_code_country": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fullname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "firstname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "lastname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email_verified": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype43": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department65"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department65"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace33": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department65"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession13"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker65"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Department66": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department66"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department66"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker66": {
                "properties": {
                    "company_type2": {
                        "$ref": "#/components/schemas/CompanyType2"
                    },
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "crop_periods_visible_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pria_payee_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "agrifield_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "role_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "roles_array": {
                        "title": "Worker app / My Profile uses this",
                        "type": "object",
                        "additionalProperties": true
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department66"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department66"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession14"
                            }
                        ]
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "rolecollection": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Role"
                        }
                    },
                    "facility": {
                        "title": "Workers main facility",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility47"
                            }
                        ]
                    },
                    "subordinates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worker66"
                        }
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "company_type": {
                        "title": "If workers type is different from Companies generic type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyType2"
                            }
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType5"
                            }
                        ]
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "factory_credentials": {
                        "$ref": "#/components/schemas/WorkerFactoryCredentials"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "user": {
                        "$ref": "#/components/schemas/User10"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility2"
                            }
                        ]
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worktype": {
                        "title": "Workers default workype",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype44"
                            }
                        ]
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace34"
                        }
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_personal_code_verified": {
                        "type": "boolean",
                        "default": false
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent9"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ProfessionArchive6": {
                "properties": {
                    "archived_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "deleted_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "archived_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "deleted_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Profession14": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProfessionArchive6"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility47": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department66"
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department66"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "User10": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "personal_code_country": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fullname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "firstname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "lastname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email_verified": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype44": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department66"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department66"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace34": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department66"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession14"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "CalendarEvent9": {
                "properties": {
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker66"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department67": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department67"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department67"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker67": {
                "properties": {
                    "company_type2": {
                        "$ref": "#/components/schemas/CompanyType2"
                    },
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "crop_periods_visible_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pria_payee_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "agrifield_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "role_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "roles_array": {
                        "title": "Worker app / My Profile uses this",
                        "type": "object",
                        "additionalProperties": true
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department67"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department67"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession11"
                            }
                        ]
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker67"
                    },
                    "rolecollection": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Role"
                        }
                    },
                    "facility": {
                        "title": "Workers main facility",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility48"
                            }
                        ]
                    },
                    "subordinates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worker67"
                        }
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "company_type": {
                        "title": "If workers type is different from Companies generic type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyType2"
                            }
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType5"
                            }
                        ]
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "factory_credentials": {
                        "$ref": "#/components/schemas/WorkerFactoryCredentials"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "user": {
                        "$ref": "#/components/schemas/User11"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility2"
                            }
                        ]
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worktype": {
                        "title": "Workers default workype",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype45"
                            }
                        ]
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace35"
                        }
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_personal_code_verified": {
                        "type": "boolean",
                        "default": false
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent4"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility48": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department67"
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department67"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "User11": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "personal_code_country": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fullname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "firstname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "lastname": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "email_verified": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Worktype45": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department67"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department67"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace35": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department67"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession11"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker67"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker67"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Department68": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department68"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department68"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker68": {
                "properties": {
                    "company_type2": {
                        "$ref": "#/components/schemas/CompanyType2"
                    },
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "crop_periods_visible_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pria_payee_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "agrifield_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "role_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "roles_array": {
                        "title": "Worker app / My Profile uses this",
                        "type": "object",
                        "additionalProperties": true
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department68"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department68"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession11"
                            }
                        ]
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker68"
                    },
                    "rolecollection": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Role"
                        }
                    },
                    "facility": {
                        "title": "Workers main facility",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility49"
                            }
                        ]
                    },
                    "subordinates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worker68"
                        }
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "company_type": {
                        "title": "If workers type is different from Companies generic type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyType2"
                            }
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType5"
                            }
                        ]
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "factory_credentials": {
                        "$ref": "#/components/schemas/WorkerFactoryCredentials"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "user": {
                        "$ref": "#/components/schemas/User11"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility2"
                            }
                        ]
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worktype": {
                        "title": "Workers default workype",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype46"
                            }
                        ]
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace36"
                        }
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_personal_code_verified": {
                        "type": "boolean",
                        "default": false
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent4"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Facility49": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department68"
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department68"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype46": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department68"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "exclude_from_worktime": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department68"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace36": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department68"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession11"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker68"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker68"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Department69": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department69"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department69"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "ProfessionArchive7": {
                "properties": {
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Profession15": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "archives": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ProfessionArchive7"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker69": {
                "properties": {
                    "company_type2": {
                        "$ref": "#/components/schemas/CompanyType2"
                    },
                    "is_active_boolean": {
                        "type": "boolean"
                    },
                    "crop_periods_visible_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pria_payee_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "agrifield_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approvable_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "brigade_member_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "subordinate_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "role_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "roles_array": {
                        "title": "Worker app / My Profile uses this",
                        "type": "object",
                        "additionalProperties": true
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "color": {
                        "type": "string"
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department69"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department69"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "firstname": {
                        "title": "Worker first name(s) (given names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "lastname": {
                        "title": "Worker last name(s) (family names), Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession15"
                            }
                        ]
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker69"
                    },
                    "rolecollection": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Role"
                        }
                    },
                    "facility": {
                        "title": "Workers main facility",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility50"
                            }
                        ]
                    },
                    "subordinates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worker69"
                        }
                    },
                    "outer_id": {
                        "title": "Worker Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "gps_tracking_interval": {
                        "title": "GPS tracking interval in minutes, integer",
                        "type": "integer",
                        "default": 15
                    },
                    "company_type": {
                        "title": "If workers type is different from Companies generic type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CompanyType2"
                            }
                        ]
                    },
                    "description": {
                        "type": "string"
                    },
                    "time_tracking_type": {
                        "title": "Time tracking type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/TimeTrackingType5"
                            }
                        ]
                    },
                    "is_foreman_manageable": {
                        "title": "True if Worker can be managed by Foreman",
                        "type": "boolean",
                        "default": 0
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup"
                        }
                    },
                    "gps_required": {
                        "title": "True if GPS in mobile is required",
                        "type": "boolean",
                        "default": false
                    },
                    "factory_credentials": {
                        "$ref": "#/components/schemas/WorkerFactoryCredentials"
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "user": {
                        "$ref": "#/components/schemas/User11"
                    },
                    "roster_visibility": {
                        "title": "Roster Visibility type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterVisibility2"
                            }
                        ]
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "worktype": {
                        "title": "Workers default workype",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype47"
                            }
                        ]
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace37"
                        }
                    },
                    "personal_code": {
                        "title": "Personal code or national personal id, up to 64 characters",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_personal_code_verified": {
                        "type": "boolean",
                        "default": false
                    },
                    "calendar_events": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalendarEvent4"
                        }
                    },
                    "qr": {
                        "title": "QR code\nThis is copy of QrImage->QrText parameter for fast querying in lists",
                        "type": "string"
                    },
                    "qr_image": {
                        "title": "QR Image",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/QrImage"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Customer52": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department69"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson46"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield55"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department69"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson46": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer52"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield55": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department69"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory7"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer52"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department69"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility50": {
                "properties": {
                    "division": {
                        "$ref": "#/components/schemas/Department69"
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Facility Id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Facility name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Facility fullname, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "reg_number": {
                        "title": "Vehicle registration number (licence plate number), string",
                        "type": "string"
                    },
                    "vin": {
                        "title": "Vehicle Identification Number (VIN), string up to 20 chars",
                        "type": "string"
                    },
                    "facility_type": {
                        "title": "Facility Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FacilityType4"
                            }
                        ]
                    },
                    "serial_number": {
                        "type": "string"
                    },
                    "enginehours_last_value": {
                        "type": "number",
                        "format": "float"
                    },
                    "odometer_last_value": {
                        "title": "Odometer last value",
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Maintenance unit",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield55"
                            }
                        ]
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer52"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson46"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department69"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worktype47": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "division": {
                        "$ref": "#/components/schemas/Department69"
                    },
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "hourly_rate": {
                        "type": "number",
                        "format": "float",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department69"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workplace37": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "department": {
                        "$ref": "#/components/schemas/Department69"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession15"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_by": {
                        "$ref": "#/components/schemas/Worker69"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_by": {
                        "$ref": "#/components/schemas/Worker69"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "WorkerGroup5": {
                "properties": {
                    "worker_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Department70": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department70"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker70": {
                "properties": {
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department70"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "WorkerGroup6": {
                "properties": {
                    "worker_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "workers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Worker70"
                        }
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "PriaPayee6": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "regnr": {
                        "type": "string"
                    },
                    "display_color": {
                        "type": "string"
                    },
                    "pria_uuid": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Crop14": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "base_name": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "hex_color": {
                        "type": "string"
                    },
                    "master_crop": {
                        "title": "Remaining crop after crops join",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Crop14"
                            }
                        ]
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "crop_type": {
                        "title": "Crop Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropType"
                            }
                        ]
                    },
                    "moisture_dry": {
                        "title": "Moisture content of dry (elevator) crop (usually 13% or below)",
                        "type": "integer",
                        "default": 13
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company11"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CropPurposeType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "translation slug.",
                        "type": "string"
                    },
                    "pria_code": {
                        "title": "Pria \"pollukultuurOtstarve\" code.",
                        "description": "TA\tteraks v\u00f5i avamaal\nKAR\tkarjatatav rohumaa\nEI\tei hoolda\nK\tkatmikalal\nHM\thaljasmassiks",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AgrifieldUsageType2": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "translation slug.",
                        "type": "string"
                    },
                    "pria_code": {
                        "title": "Pria \"maakasutusTyyp\" code.",
                        "description": "P\tP\u00f5llumaa\tCrops\nPR\tP\u00fcsirohumaa\tPermanent grassland\nPK\tP\u00fcsikultuurid\tPermanent crops\nTAR\tTagasirajatud p\u00fcsirohumaa\tRestored grassland\nM\tMustkesa\tBare fallow\nKV\tKarjatamine v\u00e4ljaspool p\u00f5llumajandusmaad\tRough grazings\nTPR\tKeskkonnatundlik p\u00fcsirohumaa\tEnvironmentally sensitive permanent grassland\n\nPN_  Puisniit    Wooded meadow\nKN_  Kadakatega niit   Juniper meadow\nPK_  Puiskarjamaa   Wooded pasture\nMN_  Muu niit   Other meadow",
                        "type": "string"
                    },
                    "is_meadow_type": {
                        "type": "boolean",
                        "default": false
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "CropLayerType3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AgreementType translation slug.",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "HarvestType3": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "title": "AgreementType translation slug.",
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "AgrifieldData4": {
                "properties": {
                    "planned_yield": {
                        "type": "integer"
                    },
                    "real_yield": {
                        "type": "number",
                        "format": "double"
                    },
                    "pria_sync_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "cultivated_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "water_protection_area_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "field_usage_description": {
                        "type": "string"
                    },
                    "start_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_date": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod"
                    },
                    "pria_payee": {
                        "$ref": "#/components/schemas/PriaPayee6"
                    },
                    "crop": {
                        "$ref": "#/components/schemas/Crop14"
                    },
                    "crop_variety": {
                        "type": "string"
                    },
                    "is_water_protection_active": {
                        "type": "boolean",
                        "default": false
                    },
                    "origin_authority": {
                        "type": "string"
                    },
                    "origin_authority_id": {
                        "type": "string"
                    },
                    "agreement_type": {
                        "title": "e-Pria poldKasutusOigus",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AgreementType"
                            }
                        ]
                    },
                    "crop_purpose_type": {
                        "title": "e-Pria pollukultuurOtstarve",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropPurposeType2"
                            }
                        ]
                    },
                    "agrifield_usage_type": {
                        "title": "e-Pria maakasutusTyyp",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AgrifieldUsageType2"
                            }
                        ]
                    },
                    "crop_layer_type": {
                        "title": "CropLayerType",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropLayerType3"
                            }
                        ]
                    },
                    "harvest_type": {
                        "title": "Harvest Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/HarvestType3"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer53": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson47"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield56"
                            }
                        ]
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department71"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson47": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer53"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Agrifield56": {
                "properties": {
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod2"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory3"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer53"
                    },
                    "location_area": {
                        "$ref": "#/components/schemas/LocationArea"
                    },
                    "geo_item": {
                        "$ref": "#/components/schemas/GeoItem3"
                    },
                    "pria_uuid": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department71"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department71": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department71"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "PriaPayee7": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "display_color": {
                        "type": "string"
                    },
                    "pria_uuid": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Crop15": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "hex_color": {
                        "type": "string"
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "AgreementType4": {
                "properties": {
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "CropPurposeType3": {
                "properties": {
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "AgrifieldUsageType3": {
                "properties": {
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "CropLayerType4": {
                "properties": {
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "HarvestType4": {
                "properties": {
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "AgrifieldData5": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "cultivated_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "water_protection_area_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "field_usage_description": {
                        "type": "string"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield56"
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod2"
                    },
                    "pria_payee": {
                        "$ref": "#/components/schemas/PriaPayee7"
                    },
                    "crop": {
                        "$ref": "#/components/schemas/Crop15"
                    },
                    "crop_variety": {
                        "type": "string"
                    },
                    "is_water_protection_active": {
                        "type": "boolean",
                        "default": false
                    },
                    "geo_item": {
                        "$ref": "#/components/schemas/GeoItem3"
                    },
                    "agreement_type": {
                        "title": "e-Pria poldKasutusOigus",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AgreementType4"
                            }
                        ]
                    },
                    "crop_purpose_type": {
                        "title": "e-Pria pollukultuurOtstarve",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropPurposeType3"
                            }
                        ]
                    },
                    "agrifield_usage_type": {
                        "title": "e-Pria maakasutusTyyp",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AgrifieldUsageType3"
                            }
                        ]
                    },
                    "crop_layer_type": {
                        "title": "CropLayerType",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropLayerType4"
                            }
                        ]
                    },
                    "harvest_type": {
                        "title": "Harvest Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/HarvestType4"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department72": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department72"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker71": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department72"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker71"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace38"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workplace38": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department72"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "Crop16": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "base_name": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "hex_color": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "crop_type": {
                        "title": "Crop Type",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropType"
                            }
                        ]
                    },
                    "moisture_dry": {
                        "title": "Moisture content of dry (elevator) crop (usually 13% or below)",
                        "type": "integer",
                        "default": 13
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Customer54": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson48"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield57"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department72"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson48": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer54"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield57": {
                "properties": {
                    "lat": {
                        "title": "NB! Lat is actually not \"E\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "lng": {
                        "title": "NB! Lng is actually not \"N\", but here it is so",
                        "type": "number",
                        "format": "float"
                    },
                    "classificator": {
                        "type": "string"
                    },
                    "__field_number_sortable": {
                        "type": "string"
                    },
                    "rowclass": {
                        "type": "string"
                    },
                    "responsible_worker": {
                        "title": "Person responsible for solving issues, faults and problems",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker71"
                            }
                        ]
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "field_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "water_protection_area_size": {
                        "type": "number",
                        "format": "float"
                    },
                    "field_usage_description": {
                        "type": "string"
                    },
                    "location_county": {
                        "type": "string"
                    },
                    "location_parish": {
                        "type": "string"
                    },
                    "pria_payee": {
                        "$ref": "#/components/schemas/PriaPayee6"
                    },
                    "crop_period": {
                        "$ref": "#/components/schemas/CropPeriod"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "is_hidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory7"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AgrifieldGroup2"
                        }
                    },
                    "location_region": {
                        "type": "string"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "crop": {
                        "$ref": "#/components/schemas/Crop16"
                    },
                    "crop_variety": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer54"
                    },
                    "location_area": {
                        "$ref": "#/components/schemas/LocationArea2"
                    },
                    "master_agrifield": {
                        "$ref": "#/components/schemas/Agrifield57"
                    },
                    "merged_agrifields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Agrifield57"
                        }
                    },
                    "merged_from_crop_period": {
                        "$ref": "#/components/schemas/CropPeriod"
                    },
                    "is_water_protection_active": {
                        "type": "boolean",
                        "default": false
                    },
                    "_geom_updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "second_worker": {
                        "title": "Second responsible person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker71"
                            }
                        ]
                    },
                    "is_storage": {
                        "type": "boolean",
                        "default": false
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department72"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Department73": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#departments as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "is_division": {
                        "type": "boolean",
                        "default": false
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department73"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Worker72": {
                "properties": {
                    "approver_ids": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "reversed_fullname": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Mapping lives here rather than in DepartmentTrait so Worker can name Department#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department73"
                            }
                        ]
                    },
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "email": {
                        "title": "Worker e-mail address.",
                        "type": "string"
                    },
                    "username": {
                        "title": "Worker username, auto-generated by Terake",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "boss": {
                        "$ref": "#/components/schemas/Worker72"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkerGroup"
                        }
                    },
                    "start_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workplaces": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Workplace39"
                        }
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Workplace39": {
                "properties": {
                    "department": {
                        "$ref": "#/components/schemas/Department73"
                    },
                    "profession": {
                        "title": "Profession",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Profession"
                            }
                        ]
                    },
                    "hourly_rate": {
                        "title": "Hourly rate, 2 decimal Number (0.00)",
                        "type": "number",
                        "format": "float",
                        "default": "0.00"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "uuid": {
                        "title": "Worker Uuid https://en.wikipedia.org/wiki/Universally_unique_identifier, auto-generated if not present",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "workload": {
                        "type": "integer",
                        "default": 100
                    }
                },
                "type": "object"
            },
            "WorkobjectCategory10": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Customer55": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "is_shared": {
                        "type": "boolean",
                        "default": 0
                    },
                    "email": {
                        "title": "Customer e-mail address.",
                        "type": "string"
                    },
                    "customer_persons": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomerPerson49"
                        }
                    },
                    "agrifield": {
                        "title": "Main Location (Address) of Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield58"
                            }
                        ]
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department73"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CustomerPerson49": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Person full name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "customer": {
                        "title": "Customer",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer55"
                            }
                        ]
                    },
                    "email": {
                        "title": "Person e-mail address.",
                        "type": "string"
                    },
                    "phone": {
                        "title": "Person phone number",
                        "type": "string"
                    },
                    "status": {
                        "title": "Default true (0), archived = 1, deleted = 2?",
                        "type": "integer",
                        "default": 0
                    },
                    "description": {
                        "type": "string"
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "Agrifield58": {
                "properties": {
                    "responsible_worker": {
                        "title": "Person responsible for solving issues, faults and problems",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker72"
                            }
                        ]
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "massive_number": {
                        "type": "string"
                    },
                    "field_number": {
                        "type": "string"
                    },
                    "outer_id": {
                        "type": "string"
                    },
                    "workobject_category": {
                        "$ref": "#/components/schemas/WorkobjectCategory10"
                    },
                    "location_address": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer55"
                    },
                    "location_area": {
                        "$ref": "#/components/schemas/LocationArea2"
                    },
                    "second_worker": {
                        "title": "Second responsible person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker72"
                            }
                        ]
                    },
                    "fault_severity": {
                        "type": "integer",
                        "default": 0
                    },
                    "created_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "updated_at_timestamp": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_deleted": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_archived": {
                        "type": "boolean",
                        "default": false
                    },
                    "uuid": {
                        "type": "string"
                    },
                    "department": {
                        "title": "Department",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department73"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "MaterialUsage8": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "material": {
                        "$ref": "#/components/schemas/Material26"
                    },
                    "storage": {
                        "title": "Storage id",
                        "description": "Undefined storage has id = 1",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield49"
                            }
                        ]
                    },
                    "amount": {
                        "type": "number",
                        "format": "float"
                    },
                    "ratio_per_hectare": {
                        "type": "number",
                        "format": "float"
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_material_report": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_inbound": {
                        "title": "Inbound = production/buy, Outbound = cost/sell",
                        "type": "boolean",
                        "default": false
                    }
                },
                "type": "object"
            },
            "Workdone29": {
                "properties": {
                    "location_history": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "pause_minutes": {
                        "type": "integer"
                    },
                    "roster_type": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "duration_seconds": {
                        "type": "integer"
                    },
                    "paused_from_timestamp": {
                        "type": "integer"
                    },
                    "duration_as_text": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Get company",
                        "description": "This is needed for RestBaseController->hasRightToModify, WorkdoneCreator",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "worker": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker41"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "worktype": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worktype36"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility26"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "main_facility_start_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "main_facility_stop_hour": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "secondary_facility": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Facility26"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "agrifield": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Agrifield49"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "kilometer_start": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "kilometer_stop": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "fuel_consumption": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "is_approved": {
                        "type": "boolean",
                        "default": false
                    },
                    "approver": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Worker41"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "approving_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pria_sync_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "hectares_served": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "is_mobile_initiated": {
                        "type": "boolean"
                    },
                    "start_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "start_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_latitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "stop_longitude": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "material_usages": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MaterialUsage8"
                        }
                    },
                    "cost_account": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CostAccount7"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "is_paused": {
                        "type": "boolean",
                        "default": false
                    },
                    "planitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Planitem18"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "rosteritem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Rosteritem3"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "fuel_filling": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/FuelFilling5"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "faultitem": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Faultitem16"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "inspection_case": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/InspectionCase18"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_forbidden_for_fieldbook": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_forbidden_for_customer": {
                        "type": "boolean",
                        "default": false
                    },
                    "customer": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Customer34"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "description_extended": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "is_agrifield_finished": {
                        "type": "boolean",
                        "default": true
                    },
                    "hectares_displayed": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "yield_measured": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "format": "float"
                    },
                    "department": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Department42"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "crop_period": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CropPeriod6"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "project": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Project14"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "device_uuid": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "foreman_info": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneForemanInfo2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_telemetry": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneTelemetry"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_pictures": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/WorkdonePicture2"
                        }
                    },
                    "is_unfinished": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_invoiced": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_manual_entry": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_created": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_auto_stopped": {
                        "type": "boolean",
                        "default": false
                    },
                    "is_signed": {
                        "type": "boolean",
                        "default": false
                    },
                    "workdone_approval": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneApproval2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "workdone_budget": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/WorkdoneBudget2"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility26"
                    }
                },
                "type": "object"
            },
            "Worker73": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#workers as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "id": {
                        "title": "Worker Id in Terake",
                        "type": "integer"
                    },
                    "fullname": {
                        "title": "Worker all name(s) separated by space, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    }
                },
                "type": "object"
            },
            "Worktype48": {
                "properties": {
                    "id": {
                        "title": "Worktype id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Worktype name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "slug": {
                        "type": "string"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Agrifield59": {
                "properties": {
                    "classificator": {
                        "type": "string"
                    },
                    "id": {
                        "title": "Workobject id in Terake",
                        "type": "integer"
                    },
                    "name": {
                        "title": "Workobject name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Workobject fullname, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "sorting_name": {
                        "title": "Worktype name used for sorting, Utf8 string 255 chars",
                        "type": "string",
                        "default": ""
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Facility51": {
                "properties": {
                    "company": {
                        "title": "Mapping lives here rather than in CompanyTrait so this class can name Company#facilities as its inverse side.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "CostAccount9": {
                "properties": {
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Project26": {
                "properties": {
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Color4": {
                "properties": {
                    "translated_name": {
                        "type": "string"
                    },
                    "code": {
                        "title": "Six digit hex code of color",
                        "type": "string"
                    },
                    "slug": {
                        "title": "Color slug ( color.maroon -> \"Maroon\", color.fuchsia -> \"Fuchsia\")",
                        "type": "string"
                    },
                    "id": {
                        "title": "Id in Terake system",
                        "type": "integer",
                        "default": 0
                    }
                },
                "type": "object"
            },
            "Shift8": {
                "properties": {
                    "pause_minutes": {
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Formatted time, like \"00:00:00\"",
                        "type": "string"
                    },
                    "to_time": {
                        "title": "Formatted time, like \"23:59:59\"",
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "name": {
                        "title": "Shift name, Utf8 string 255 chars",
                        "type": "string"
                    },
                    "short_name": {
                        "title": "Shift short name, Utf8 string 3 chars",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype48"
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield59"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility51"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility51"
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility51"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount9"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project26"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "outer_id": {
                        "title": "Id in external system, for example code in Accounting or Human Resources system.",
                        "type": "string"
                    },
                    "color_code": {
                        "title": "Color in visuals",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Color4"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "Workdone30": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "start_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "stop_time": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "pause_total_duration": {
                        "type": "integer",
                        "default": 0
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility51"
                    }
                },
                "type": "object"
            },
            "Customer56": {
                "properties": {
                    "fullname": {
                        "type": "string"
                    },
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "consumer_company": {
                        "title": "In one direction, from Provider to Consumer. For reversed reports it must have second relation\nWill not expose consumer actual id to provider (?)",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    }
                },
                "type": "object"
            },
            "RosterType8": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "slug": {
                        "title": "Translation slug",
                        "type": "string"
                    },
                    "hex_color": {
                        "title": "Background color of event",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "RosteritemRecurrence20": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "title": "Repeating starts from parent rosteritem fromTime",
                        "type": "string",
                        "format": "date-time"
                    },
                    "custom_rule_json": {
                        "description": "The custom recurrence rule as the web client saved it",
                        "type": "object"
                    }
                },
                "type": "object"
            },
            "Rosteritem15": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "from_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "to_time": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "name": {
                        "title": "Rosteritem name, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime",
                        "type": "string"
                    },
                    "fullname": {
                        "title": "Rosteritem fullname, Utf8 string 255 chars. Auto generated based on shift, fromTime, toTime, and related Entities names",
                        "type": "string"
                    },
                    "worker": {
                        "$ref": "#/components/schemas/Worker73"
                    },
                    "worktype": {
                        "$ref": "#/components/schemas/Worktype48"
                    },
                    "shift": {
                        "$ref": "#/components/schemas/Shift8"
                    },
                    "description": {
                        "type": "string"
                    },
                    "pause_seconds": {
                        "type": "integer",
                        "default": 0
                    },
                    "workdone": {
                        "title": "!! NB !! Do not show this to \"classificator\" serialization groups",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Workdone30"
                            }
                        ]
                    },
                    "agrifield": {
                        "$ref": "#/components/schemas/Agrifield59"
                    },
                    "foreman": {
                        "$ref": "#/components/schemas/Worker73"
                    },
                    "main_facility": {
                        "$ref": "#/components/schemas/Facility51"
                    },
                    "secondary_facility": {
                        "$ref": "#/components/schemas/Facility51"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/Customer56"
                    },
                    "customer_person": {
                        "title": "Customer contact person",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/CustomerPerson17"
                            }
                        ]
                    },
                    "provider": {
                        "$ref": "#/components/schemas/Customer56"
                    },
                    "cost_account": {
                        "$ref": "#/components/schemas/CostAccount9"
                    },
                    "project": {
                        "$ref": "#/components/schemas/Project26"
                    },
                    "roster_type": {
                        "title": "Classificator about calendar item type",
                        "description": "work, - usual type, wide green color\nunavailable, - (translate to \"vacation\" if rosteritem has worker set) - slim red color\nemergency, - (translate to \"sickness\" if rosteritem has worker set) - slim red color",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterType8"
                            }
                        ]
                    },
                    "roster_status": {
                        "title": "Classificator about (Worker) assignment status",
                        "description": "open, - Worker not assigned - orange color\ntaken, - Worker has created or assigned herself Open or Reopen status item: to be accepted by Boss - red color,\nassigned, - Worker assignment is accepted by Boss - green color,\nreopen, - assigned Worker has refused to do it - orange color,",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/RosterStatus2"
                            }
                        ]
                    },
                    "outer_id": {
                        "title": "Event subject",
                        "type": "string"
                    },
                    "rosteritem_recurrence": {
                        "$ref": "#/components/schemas/RosteritemRecurrence20"
                    },
                    "company": {
                        "title": "Object owner",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/Company7"
                            }
                        ]
                    },
                    "maintenance_unit": {
                        "$ref": "#/components/schemas/Facility51"
                    }
                },
                "type": "object"
            },
            "LoggedUser": {
                "properties": {
                    "id": {
                        "description": "Worker id",
                        "type": "integer"
                    },
                    "username": {
                        "description": "Login name for the company password",
                        "type": "string"
                    },
                    "fullname": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "FactoryTapRefusal": {
                "properties": {
                    "ok": {
                        "type": "boolean",
                        "default": false,
                        "enum": [
                            false
                        ]
                    },
                    "error": {
                        "description": "Why the tap was refused",
                        "type": "string",
                        "example": "Device not found",
                        "default": ""
                    }
                },
                "type": "object"
            }
        },
        "securitySchemes": {
            "bearer": {
                "type": "http",
                "description": "An access token from the authorization server at auth.terake.com.",
                "bearerFormat": "JWT",
                "scheme": "bearer"
            },
            "apiKey": {
                "type": "apiKey",
                "description": "The legacy worker API key, accepted by every route but the auth flows until the old credentials are retired after the migration.",
                "name": "X-Terake-Api-Key",
                "in": "header"
            }
        }
    },
    "security": [
        {
            "bearer": []
        },
        {
            "apiKey": []
        }
    ],
    "tags": [
        {
            "name": "Workdones",
            "description": "A Workdone is work actually performed: who worked, on what, from when to when, and with which materials. It is the busiest entity in the API and the one most other records eventually point at. These endpoints start and stop work, create and edit records, attach material usage, approve work and read it back by period. Work can arrive from the mobile app, from a plan item marked done, from a card reader or from telemetry. A Workdone is either approved or not: approving one records who approved it, when, and any comment they left, and a customer can approve their own work separately through a token link. For consolidated figures or worked hours over a period, prefer the endpoints under Reports: raw Workdone rows overlap, run past midnight and include unapproved and corrected records, so summing them yourself will not match what the reports show. Deleting is soft, except that a refuelling Workdone cannot be deleted here at all."
        },
        {
            "name": "Agreements",
            "description": "An Agreement records the contractual basis on which a field is farmed - a lease, an ownership record or a service arrangement. Agreement objects link the agreement to the fields and cadastral units it covers. These endpoints create and edit agreements, archive them and list the agreements attached to one workobject. Agreements matter for PRIA reporting, where the right to farm a field has to be evidenced. Archived agreements stay readable so past seasons still reconcile."
        },
        {
            "name": "FuelBalances",
            "description": "A fuel balance is a measured reading of how much fuel a machine or tank holds at a moment in time. Readings are chained, so consumption between two readings can be calculated rather than estimated. These endpoints record a reading, read the balances for a period and recalculate consumption. Recording a reading in the middle of an existing chain re-links the readings around it. Consumption figures feed the fuel reports and the cost allocation."
        },
        {
            "name": "Identificators",
            "description": "An Identificator is a physical token that identifies a worker or a machine - an RFID tag, an NFC card or a fuel key. Scanning one at a terminal or a fuel pump attaches the resulting record to the right worker or facility. These endpoints create, edit, list and delete identificators. One worker or machine can hold several, from different systems. They are how work gets recorded without anyone logging in."
        },
        {
            "name": "Plans",
            "description": "A plan item is work scheduled before it happens: who should do what, when, on which field or machine. Plan items carry a worktype, a resource, planned times and planned material usage. These endpoints create and edit plan items, change their dates, add material usage and mark one done. Marking a plan item done creates the Workdone that records the work actually performed. Recurring plans generate their occurrences from a recurrence rule rather than being entered one by one."
        },
        {
            "name": "Messages",
            "description": "Messages and notifications are what the system sends to workers - a plan assigned, a fault reported, a document to sign. A notification is addressed to one worker and tracks whether it has been opened. These endpoints send a message, list new notifications and mark one read. Silent notifications exist so a client can be updated without the worker seeing anything. Message text itself is stored in the database rather than in translation files."
        },
        {
            "name": "Account",
            "description": "Registration creates a company and its first account together. Password reset works by emailing a link that carries a token rather than by sending a password."
        },
        {
            "name": "AgrifieldWorkCapacities",
            "description": "A capacity records how many hectares of one worktype a crop period is meant to cover. It is the planning target that actual work is measured against. These endpoints store the capacities for a crop period and read them back per worktype. The fulfilment route compares the target with the hectares actually worked, planned and covered by agrifield works. Everything here is scoped to a crop period, so the same worktype has a separate capacity each season."
        },
        {
            "name": "AgrifieldWorks",
            "description": "This section is about planning a crop year, not about recording work that was done. An AgrifieldWork is one job planned across several fields for one crop period: sowing a crop, spraying, fertilising or harvesting. It gathers the worktype, the fields it covers, the crops involved and the PRIA payees it is booked to. These endpoints create the job, set which fields it covers, plan it over a date range and distribute it across weeks. Planning an AgrifieldWork produces plan items, which become Workdones once the work is actually performed. Material inputs attached to the job are planned amounts, held as a ratio per hectare, so they can later be compared with what was really used. Work actually performed on a field is not here - it lives under the Workdones and Reports sections. Beware two route names that read as if they belonged here but do not: GET /api/agrifieldworkandmaterialusage and PUT /api/add-agrifieldworkandmaterialusage both operate on Workdones and never touch an AgrifieldWork."
        },
        {
            "name": "Auth",
            "description": "A call is authenticated with an OAuth 2.0 access token from https://auth.terake.com or with the worker's API key in the X-Terake-Api-Key header. Either one identifies both the worker and their company, so it is the tenant boundary as much as the credential. These endpoints log a worker in with a username and password or through a Google or Facebook account, and issue one-time tokens for links sent by email."
        },
        {
            "name": "Cadastres",
            "description": "A Cadastre is a unit from the national land register, identified by its cadastral number. Fields are attached to cadastral units so that ownership and area can be evidenced. These endpoints create and edit cadastres, and attach or detach the workobjects that sit on them. One cadastral unit can carry several fields and one field can span several units, so the relation is many to many. Reading a cadastre returns the workobjects still attached to it."
        },
        {
            "name": "Rosters",
            "description": "A roster item is a shift: a worker scheduled to work between two times, with a status showing whether it has been taken, done or rejected. Calendar items cover both roster items and plan items, which is why several routes accept either. These endpoints create and edit roster items, fill a roster across workers and dates, copy or move items, set recurrence and clear a period. Vacations and absences are roster items with their own type. Marking an item done creates the Workdone that records the hours actually worked."
        },
        {
            "name": "Reports",
            "description": "These endpoints read work that has already been recorded and return it aggregated. Work hours, shift counts, engine hours, fuel, material usage, accounting and work unit figures are each available for a period. Most take a from and to date and can be grouped by worker, department, worker group, machine or field. Nothing here changes stored data. Report rows are computed rather than being entities, so the shape of a response follows the grouping requested. Most reports include only approved work. Approving a Workdone is what triggers the calculations the reports are built on: the worked time is split into the periods the hour figures are summed from, and field work is assigned to its crop period. Work that has not been approved is therefore missing from those reports rather than merely unconfirmed. Each endpoint below states whether it includes only approved work, all work, or lets you choose with a flag. Separately, work whose start and stop time are equal is left out by default; pass incl_zero_works in the dimension array to keep it. Check both before concluding that a report returns fewer hours or rows than expected."
        },
        {
            "name": "Companys",
            "description": "A Company is the tenant. Almost every other record in the API belongs to exactly one company, and the caller's credential decides which. These endpoints read and edit the company record, restore one that was soft-deleted, and read company parameters that switch features on and off. Statistics and registration routes report activity across companies for account managers. Only superadmins and account managers can address a company other than their own."
        },
        {
            "name": "CostAccounts",
            "description": "A cost account is the heading work and materials are charged to - a cost centre in everyday terms. Workdones, plan items, projects and shifts all reference one. These endpoints create, edit, list and delete cost accounts, and manage the rules that book work to them automatically. A rule matches on worktype, facility, worker or field and points at an account, so allocation follows the operation rather than the operator remembering. Rules apply when work is recorded, so changing one does not rewrite work already booked."
        },
        {
            "name": "Crops",
            "description": "A Crop is an entry in the crop list a company plans and reports against - a specific plant, not a growing season. Fields reference a crop through their per-period data, so the same field carries different crops in different years. These endpoints create, edit, archive and delete crops, and merge duplicates into one. Merging exists because crops arrive from PRIA imports as well as being typed by hand. Archived crops stay available to past seasons while disappearing from new dropdowns."
        },
        {
            "name": "Customers",
            "description": "A Customer is an external party work is done for, with its own contact people. Customers can be given visibility of selected facilities, fields, worktypes and maintenance units. These endpoints create and edit customers and their contact people, and set which objects are shared with whom. Sharing is per object type, so a customer can see machinery without seeing fields. Customers can also approve completed work through a token link sent by email."
        },
        {
            "name": "Departments",
            "description": "A Department is an organisational unit that also acts as a visibility boundary. Workers, facilities, fields, worktypes, customers and roster items can all be filtered by the caller's department as well as by their company. These endpoints create and edit departments and set which workers belong to one. Assigning a worker to a department narrows what they see rather than only labelling them. Records outside a worker's departments are simply absent from their responses."
        },
        {
            "name": "Devices"
        },
        {
            "name": "Integrations",
            "description": "An Integration connects a company to an external telemetry or accounting partner - Wialon, John Deere, Mapon, Directo and others. It holds the credentials and the synchronisation bookmarks for that partner. These endpoints read and edit integration records and the partner objects mapped to Terake ones. Most of the traffic here is machine-to-machine with the standalone integration service rather than customer-facing. Mapping a partner object to a Terake object is what lets telemetry land on the right machine or field."
        },
        {
            "name": "Document types",
            "description": "A document type classifies an uploaded file - a delivery note, a certificate, an inspection report. File items and material inventory records reference one. These endpoints create, edit, archive and delete document types. The list is shared with partner companies, so a type can be archived by its owner and separately by a company that consumes it. Types are per company; there is no global list."
        },
        {
            "name": "Facilities",
            "description": "A Facility is a machine: a tractor, a trailer, an implement or a vehicle. It carries its registration, its type, its telemetry identifiers and the parts fitted to it. These endpoints create and edit facilities, archive them, record engine hours and read the telemetry the integration server reports. Facility parts have their own lifecycle - measured, replaced and inspected on their own schedule. Facilities can be shared with partner companies and with customers."
        },
        {
            "name": "Geoinfo",
            "description": "These endpoints serve position and geometry: where machines are now, where they have been, and the shape of fields. Facility locations and telemetry parameters come from the integration server rather than from Terake itself. Field geometry is read and written per Agrifield data record, so a field can change shape between crop periods. The cadastral lookup proxies the national register and returns its answer unchanged. Coordinates arrive in L-EST as well as WGS84 and are converted on the way in."
        },
        {
            "name": "Facility types",
            "description": "A facility type groups machines that are alike - tractors, trailers, sprayers. Facilities reference a type, and inspection templates hang off types so that every machine of a kind is inspected the same way. These endpoints create, edit, archive and delete types. The list is shared with partner companies and archived in two levels, by the owner and by each consumer. Deleting is soft so existing machines keep a readable type."
        },
        {
            "name": "Faults",
            "description": "A fault is a problem reported against a machine or a workobject: what is wrong, who reported it, how severe it is, and pictures of the problem. A fault can be planned into repair work, which links it to a plan item and eventually to an inspection case. These endpoints create and edit faults and list them, for the whole fleet or per facility or workobject. Fault severity also colours the faulty item in the fleet and fieldbook views, so an open critical fault stays visible wherever the machine or field appears."
        },
        {
            "name": "Agrifields",
            "description": "An Agrifield is a field: its name and number, its area, its geometry and the cadastral units it sits on. Its crop data is held per crop period, so the same field carries a different crop, yield and fertilising plan each year. These endpoints create and edit fields, set the crop period data, merge one field into another, and read the fertilising plan calculated from the crop, the planned yield and the soil samples taken on the field. The fieldbook routes assemble everything recorded on a field for a season - works, materials and yields - in the form the authorities expect. Geometry can be uploaded as a shapefile or GPX archive rather than entered by hand. The main entry points to fieldbook and agrifield data are GET /api/fieldbookfields/0 (a list of all agrifields with their latest crop period data) and GET /api/fieldbook/{id}, where id is the agrifield id."
        },
        {
            "name": "FileOutput",
            "description": "These endpoints generate files rather than return data: PDFs, spreadsheets and shapefile archives. A report, roster, inspection case, QR sheet or signed document is rendered server-side and the response gives the web path of the finished file. Long reports are produced by a command line renderer instead of in the request, so they do not time out. The calendar feed is authenticated by a share token rather than an api key so it can be subscribed to from an external calendar. Nothing here changes stored data."
        },
        {
            "name": "Files",
            "description": "A file item is an attachment, held against a parent record rather than on its own. One upload endpoint serves ten parent types - workdones, facilities, workers, plans, fault items, facility parts, inspection cases and items, companies and workobjects - so the route says what the file hangs off. These endpoints upload, list, download and delete files, and restore ones deleted by mistake. Deletion is soft and deleted files stay readable for thirty days. Images can be streamed directly rather than as JSON."
        },
        {
            "name": "Flatapi",
            "description": "The flat API is the synchronisation surface for the mobile and factory applications. A device sends a bookmark timestamp per entity type and receives only what changed since each one, so it can be current on workers and stale on workdones at the same time. These endpoints log a device in by password, by PIN, NFC or RFID credential, or by factory provisioning, and load the company data set it needs afterwards. Mutation requests let a device push records it created offline, with its own UUIDs. This is the busiest surface in the API by call volume."
        },
        {
            "name": "Fuels",
            "description": "A Fuel is a fuel type - diesel, petrol, AdBlue - not a quantity. Fillings, balances and machines reference one. These endpoints create, edit, archive and delete fuel types. The list is shared with partner companies and archived in two levels. Deleting is soft so historic fillings keep a readable type."
        },
        {
            "name": "FuelFillings",
            "description": "A fuel filling records fuel put into a machine: when, how much, by whom and from which tank. Fillings can be entered by hand or arrive from a fuel system through the integration server. These endpoints create, edit, list and delete fillings, and list them for one facility. A filling can generate a Workdone automatically so refuelling shows up as recorded work. That link is why a refuelling Workdone cannot be deleted through the ordinary Workdone route."
        },
        {
            "name": "Settings",
            "description": "These endpoints hold per-company configuration rather than business data: application settings, which columns a table shows, and the relations between arbitrary Terake objects. Settings are stored as JSON under a key, so the shape is whatever the interface saved. Bulk actions that change many records of one type at once also live here. The relation routes let objects of different types be linked without a dedicated table for each pair. Nothing here is scoped narrower than the company."
        },
        {
            "name": "Classificators",
            "description": "Classificators are the small lookup lists the interface fills its dropdowns from - worktypes, crops, materials, statuses and similar. These endpoints return several such lists in one response, keyed by type, so a client can populate a whole screen in a single call. The search routes answer partial matches for type-ahead fields. Which lists are returned is chosen by the caller rather than fixed. Every list is scoped to the calling company."
        },
        {
            "name": "Herdings",
            "description": "A Herding records animals grazing a field over a period: which animals, how many, and for how long. Grazing counts as fertilisation, so a herding contributes to the field nutrient balance. These endpoints create, edit, list and delete herdings, and rebuild the fertilising cache when one changes. Herdings can be submitted to PRIA as reportable activity. Animal types come from a shared classificator rather than free text."
        },
        {
            "name": "InspectionCases",
            "description": "An inspection case is one run of an inspection against a machine or a field object, and a repair case is the same structure used for repair work. A case holds items, each item holds tasks, and tasks are marked correct, not correct or unhandled. These endpoints create and edit cases, record task results, attach material usage and photographs, approve a case and plan follow-up repairs for whatever failed. The same action serves the inspection, repair and fault routes, which is why several URLs answer alike. Cases are the largest section here because the structure is three levels deep."
        },
        {
            "name": "InspectionTemplates",
            "description": "A template defines what an inspection consists of before anyone carries one out. A master template holds tasks; slave templates group tasks into variants; inspection types set the interval at which an inspection falls due. These endpoints create and edit all three, reorder tasks, and attach or detach tasks and types through a cross matrix. Templates hang off facility types so every machine of a kind is inspected the same way. Changing a template does not rewrite inspections already carried out."
        },
        {
            "name": "Inventory",
            "description": "Inventory here tracks whether a machine is in use, in storage or under maintenance, rather than counting stock. Registering an event moves a facility from one state to another and writes a log entry. These endpoints record the event and read the log for one machine. The log is append-only, so the history of a machine can be reconstructed. Material stock levels are handled under Materials instead."
        },
        {
            "name": "JourneyForms"
        },
        {
            "name": "Materials",
            "description": "A Material is anything consumed by work: seed, fertiliser, chemicals, spare parts, or a work unit charged by the hour. Materials carry their category, unit, composition and certificates. These endpoints create and edit materials, record inventory levels, assign lifespans and read stock over the last two months. Material usage links a material to a Workdone, plan item or inspection, which is how consumption is reported. The workunits routes serve the same entity with a different category."
        },
        {
            "name": "Location areas",
            "description": "A location area groups fields geographically - a region, a farm or a block. Fields, agrifield works and reports can be filtered by area. These endpoints create, edit, list and delete areas. An area is a label for reporting rather than a geometry in its own right. One field belongs to one area."
        },
        {
            "name": "ManureStorages",
            "description": "A manure storage records where organic fertiliser is held, its capacity and what it contains. Applying manure to a field draws from a storage and contributes to the field nutrient balance. These endpoints create, edit, list and delete storages. Storage contents matter for the fertilising plans and for statutory reporting. A storage is referenced by material usage rather than holding it directly."
        },
        {
            "name": "MaterialCategories",
            "description": "A material category groups materials that behave alike - fertilisers, seeds, plant protection products, fuel, spare parts. Category decides how a material is treated in fertilising calculations and reports. These endpoints create, edit, archive and delete categories. The list is shared with partner companies and archived in two levels. Category 5 is the one work units are filed under."
        },
        {
            "name": "MaterialInventory"
        },
        {
            "name": "Mobile folders",
            "description": "A mobile folder slot decides what appears on the home screen of the mobile application and in which order. Each slot points at a folder type and a position. These endpoints create, edit, list and delete slots. Configuring slots is how a company tailors the app to the work its people actually do. Slots are per company rather than per worker."
        },
        {
            "name": "PriaFiles",
            "description": "PRIA is the Estonian agricultural registry, reached over X-Road. These endpoints import fields, crops, payees and fertiliser lists from PRIA, and submit completed work, harvests and herding back to it. Imported field geometry arrives as a shapefile or GPX archive and can be matched to existing fields or brought in as new ones. Submissions are per Workdone or per crop period and report what the registry answered. The classificator sync keeps local crop and material lists aligned with the registry."
        },
        {
            "name": "PriaPayees",
            "description": "A PRIA payee is the legal entity that claims support for a field - often but not always the company itself. Fields and agrifield works are booked to a payee so that claims can be separated. These endpoints create, edit, list and delete payees, and send a confirmation letter to one. Workers can be restricted to the payees they are allowed to see. Which payee a field belongs to determines which claim its work counts towards."
        },
        {
            "name": "Professions",
            "description": "A Profession is a worker's trade or job title - driver, agronomist, mechanic. Workers reference one, and it can drive what work they are offered. These endpoints create, edit, archive and delete professions. The list is shared with partner companies and archived in two levels. Deleting is soft so existing workers keep a readable profession."
        },
        {
            "name": "Projects",
            "description": "A Project groups work and cost over something larger than a single job - a season, a contract, a construction site. Workers, machines and fields can be booked to a project as resources. These endpoints create and edit projects, attach and remove resources, and read statistics per resource. Removing a resource returns the project figures that remain rather than a bare acknowledgement. Projects sit alongside cost accounts rather than replacing them."
        },
        {
            "name": "RemoteMessaging",
            "description": "Messages pushed from the server to a device through Firebase Cloud Messaging. The factory tap is the first: a worker scans the changing QR code of a Factory tablet in QR mode with the Terake Lite app, and the server pushes the scan back to that tablet, with the worker added, so the tablet starts or stops the worker's work. The tablet must be of the caller's company and have registered its Firebase token through the flat API. The server checks the code's format only; the tablet knows which codes it showed and drops a stale one."
        },
        {
            "name": "Shifts",
            "description": "A Shift is a named working pattern - a morning shift, a night shift - with its start and end. Roster items and workday rules reference one so that hours are counted against the right pattern. These endpoints create, edit, list and delete shifts. Shifts are scheduled rather than measured, which is why they sit with planning rather than with worked hours. Shift counts are reported separately under Reports."
        },
        {
            "name": "SignedDocuments",
            "description": "A signed document records that a worker or customer agreed to something: a delivery, a safety briefing, a completed job. The signature, the signer name and the signing time are stored with the content that was signed. These endpoints create and read signed documents and render them as PDF. A document can be served by an email link carrying a uuid and a token rather than an api key. Once signed the content is kept as it was at the moment of signing."
        },
        {
            "name": "SoilSamples",
            "description": "A soil sample records what was measured on a field: nutrient levels, pH and the date it was taken. Samples drive the fertilising plans, since need is calculated from what the soil already holds. These endpoints create and edit samples, import them from a shapefile or spreadsheet, and read them by field or by coordinates. A sample is tied to a position, so several samples can describe different parts of one field. Samples are matched to Agrifield data records so the right season uses the right measurement."
        },
        {
            "name": "Workers",
            "description": "A Worker is a person with access to the system, belonging to exactly one company. The worker record carries their roles, department, profession, credentials and the rates their work is charged at. These endpoints create and edit workers, set roles, passwords, PIN and card credentials, and define which workers a foreman may approve for. Brigade routes let a foreman start and stop work for a whole crew at once. A worker is archived rather than removed so their recorded work stays attributable."
        },
        {
            "name": "TranslationPhrases"
        },
        {
            "name": "Transport",
            "description": "These endpoints cover moving things rather than working a field: charter jobs, trip routes and journey forms. A journey form records the legs of a trip, with times, mileage and the worktype for each. These endpoints create and edit all of them and add legs to a form. Journey forms are what transport work is billed and reported from. Note: this functionality is abandoned and no longer maintained - use it with caution."
        },
        {
            "name": "Transports",
            "description": "A transport case records one load moved: what, from where, to where and by whom. Cases are used where the material itself matters, such as harvest or manure. These endpoints create, edit, list and delete cases and read a simplified list for several at once. Modifying a case also updates the related material inventory. The case links the load to the machines and the storages at each end."
        },
        {
            "name": "Ttki",
            "description": "TTKI is the Estonian construction site registry, reached over X-Road. A worker starts and stops work by presenting a card at a reader on a work area, so these routes authenticate by card number rather than by api key. These endpoints start and stop work, list the work areas available to a card, and read the works recorded against one. Employment chains, constructions and employee lists are imported from the registry. Work recorded this way becomes an ordinary Workdone in Terake."
        },
        {
            "name": "WorkdayRules",
            "description": "A workday rule decides how recorded hours are counted: what makes a normal day, when overtime starts, how breaks and night hours are treated. Rules are applied when work hours are summarised rather than when work is recorded. These endpoints create, edit, list and delete rules. Changing a rule changes future summaries, not the underlying Workdones. The summaries themselves are read under Reports."
        },
        {
            "name": "WorkerGroups",
            "description": "A worker group is a set of workers handled together - a crew, a team, a brigade. Groups are used to roster, filter and report on several people at once. These endpoints create and edit groups and add or remove members. Deleting a group detaches its members rather than deleting them. Groups cut across departments, so a worker can be in a group without changing what they can see."
        },
        {
            "name": "Workobjects",
            "description": "A Workobject is anything work is carried out on. It shares its entity with Agrifield, so a field is a workobject with crop data and a yard is a workobject without. These endpoints create and edit workobjects, attach them to cadastral units and read their crop rotation and statistics. The workobjectsonly routes address the same records without the field specific data. Which behaviour applies is decided by the workobject category."
        },
        {
            "name": "WorkobjectCategories",
            "description": "A workobject category distinguishes the kinds of object work is done on - a field, a yard, a building, a road. Category decides which rules apply: only fields carry crop data and PRIA obligations. These endpoints create, edit, archive and delete categories. The list is shared with partner companies and archived in two levels. Category 10 is the default for a workobject created without one."
        },
        {
            "name": "Worktypes",
            "description": "A Worktype classifies what was done - ploughing, spraying, transport, maintenance. Nearly every record that describes work references one: workdones, plan items, roster items, agrifield works and cost account rules. These endpoints create, edit, archive and delete worktypes and set the hourly rate charged for one. A rate can be set per worker or on the worktype itself. The list is shared with partner companies and archived in two levels."
        }
    ],
    "x-tagGroups": [
        {
            "name": "Workdones",
            "tags": [
                "Workdones",
                "Ttki"
            ]
        },
        {
            "name": "Planning",
            "tags": [
                "Plans",
                "Projects"
            ]
        },
        {
            "name": "Rosters",
            "tags": [
                "Rosters",
                "Shifts"
            ]
        },
        {
            "name": "Fieldbook",
            "tags": [
                "Agrifields",
                "AgrifieldWorks",
                "AgrifieldWorkCapacities",
                "Crops",
                "SoilSamples",
                "ManureStorages",
                "Herdings",
                "Geoinfo",
                "Cadastres"
            ]
        },
        {
            "name": "Fleet",
            "tags": [
                "Facilities",
                "Facility types",
                "Faults",
                "Fuels",
                "FuelFillings",
                "FuelBalances",
                "Transport",
                "Transports",
                "JourneyForms",
                "Identificators"
            ]
        },
        {
            "name": "Maintenance",
            "tags": [
                "InspectionCases",
                "InspectionTemplates"
            ]
        },
        {
            "name": "Materials",
            "tags": [
                "Materials",
                "MaterialCategories",
                "MaterialInventory",
                "Inventory"
            ]
        },
        {
            "name": "Reporting",
            "tags": [
                "Reports"
            ]
        },
        {
            "name": "Pria",
            "tags": [
                "PriaFiles",
                "PriaPayees"
            ]
        },
        {
            "name": "Files",
            "tags": [
                "Files",
                "Document types",
                "FileOutput",
                "SignedDocuments"
            ]
        },
        {
            "name": "Sync",
            "tags": [
                "Flatapi",
                "Devices",
                "RemoteMessaging",
                "Integrations"
            ]
        },
        {
            "name": "Identity",
            "tags": [
                "Auth",
                "Account",
                "WorkerGroups",
                "Departments",
                "Professions"
            ]
        },
        {
            "name": "Admin",
            "tags": [
                "Workers",
                "WorkdayRules",
                "Companys",
                "Customers",
                "Agreements",
                "Messages",
                "Settings",
                "CostAccounts",
                "Worktypes",
                "Workobjects",
                "WorkobjectCategories",
                "Location areas",
                "Mobile folders",
                "TranslationPhrases",
                "Classificators"
            ]
        }
    ]
}