# Schemas

One page per resource with its full field set, plus the shared collection envelope and error documents.

Each schema page gives a resource's full field set once, so operation pages can link to it instead of repeating it. It also lists the operations that return the resource, and how its `List`, `Summary` and `Links` variants differ from the full object.

Two shared pages come first, because every collection and every error is built from them:

- [Pagination](https://developers.plnnrly.com/en/docs/api/v2/schemas/pagination/): the envelope of every collection, field by field.
- [Problems](https://developers.plnnrly.com/en/docs/api/v2/schemas/problems/): the members of every error document, [by status](https://developers.plnnrly.com/en/docs/api/v2/schemas/problems/#by-status).

## All schemas

- [Problems](https://developers.plnnrly.com/en/docs/api/v2/schemas/problems/): Every error document /api/v2 returns, with its type URI, its extra members and a real example.
- [Pagination](https://developers.plnnrly.com/en/docs/api/v2/schemas/pagination/): The envelope, the page and link shapes, the advisory warnings and the shared Ref.
- [Absence](https://developers.plnnrly.com/en/docs/api/v2/schemas/absence/): An absence: the period an employee was away from work, booked for them by HR.
- [Budget](https://developers.plnnrly.com/en/docs/api/v2/schemas/budget/): A budget: a named pot of minutes on a project that tasks are filed under and time is logged against, optionally filed in an organisation-wide budget group.
- [BudgetGroup](https://developers.plnnrly.com/en/docs/api/v2/schemas/budget-group/): A budget group: the organisation-wide category budgets are filed under, carrying the icon plnnrly shows beside them.
- [Checkin](https://developers.plnnrly.com/en/docs/api/v2/schemas/checkin/): A checkin: one attendance record for one employee, opened when they clock in and closed when they clock out.
- [Comment](https://developers.plnnrly.com/en/docs/api/v2/schemas/comment/): A comment on a work item or on a drive item: the rich-text body one user posted to a thread, with its author and its timestamps.
- [CompanyBranch](https://developers.plnnrly.com/en/docs/api/v2/schemas/company-branch/): A company branch: one of the organisation's own locations, used to group the customers a branch is responsible for.
- [Contact](https://developers.plnnrly.com/en/docs/api/v2/schemas/contact/): A contact person: either a customer's contact (the CRM address book) or an employee's emergency contact, distinguished by `contactable_type`.
- [ContactRole](https://developers.plnnrly.com/en/docs/api/v2/schemas/contact-role/): A contact role: the organisation-wide list a contact's function is picked from, e.g.
- [Customer](https://developers.plnnrly.com/en/docs/api/v2/schemas/customer/): A customer: the CRM record every project, contact, subscription and sales invoice hangs off.
- [CustomerCategory](https://developers.plnnrly.com/en/docs/api/v2/schemas/customer-category/): A customer category: the hand-maintained taxonomy customers are grouped by, used for segmentation and reporting.
- [CustomerSubscription](https://developers.plnnrly.com/en/docs/api/v2/schemas/customer-subscription/): A recurring agreement with one customer: what it covers, the interval it is billed at, when it started and when it is next invoiced.
- [DiscoveryEntry](https://developers.plnnrly.com/en/docs/api/v2/schemas/discovery-entry/): One resource this API exposes: where it lives, what it is called in the permission system, which schemas describe it and which operations it registers.
- [DriveDocument](https://developers.plnnrly.com/en/docs/api/v2/schemas/drive-document/): The body of a drive item of kind `document`: the rich-editor content plnnrly opens when you click a document in the file browser.
- [DriveFolder](https://developers.plnnrly.com/en/docs/api/v2/schemas/drive-folder/): A folder in a drive: the tree plnnrly's file browser draws under a project, a customer, the organisation drive or a user's personal drive.
- [DriveItem](https://developers.plnnrly.com/en/docs/api/v2/schemas/drive-item/): A file or document in a drive: the rows plnnrly's file browser lists under a project, a customer, the organisation drive or a user's personal drive.
- [Event](https://developers.plnnrly.com/en/docs/api/v2/schemas/event/): A planning event: one block on a user's agenda, optionally linked to a kanban task so time can be logged against it.
- [FreeDay](https://developers.plnnrly.com/en/docs/api/v2/schemas/free-day/): A free day: one calendar date on which the organisation is closed, either instantiated from a recurring holiday or added by hand.
- [FurloughBalanceMutation](https://developers.plnnrly.com/en/docs/api/v2/schemas/furlough-balance-mutation/): A furlough balance mutation: one signed ledger entry against an employee's leave balance for a `year` and a leave `type`.
- [Holiday](https://developers.plnnrly.com/en/docs/api/v2/schemas/holiday/): A holiday: a recurring named day off, such as Nieuwjaarsdag.
- [Invoice](https://developers.plnnrly.com/en/docs/api/v2/schemas/invoice/): A legacy invoice header: the description, date and hourly rate a project was billed at before sales invoices replaced it.
- [Label](https://developers.plnnrly.com/en/docs/api/v2/schemas/label/): A label: a per-project tag work items are marked with, carrying the colour and the optional icon the backlog chips and the work item detail view show beside its name.
- [Media](https://developers.plnnrly.com/en/docs/api/v2/schemas/media/): A file attached to a record: the metadata of one upload (its name, type, size and the collection it belongs to) plus an on-demand signed download URL.
- [Note](https://developers.plnnrly.com/en/docs/api/v2/schemas/note/): A free-text note attached to a project, a customer or a work item: the running commentary plnnrly shows in a record's Notes sub-page.
- [Project](https://developers.plnnrly.com/en/docs/api/v2/schemas/project/): A project: the unit customers are billed against.
- [ProjectLink](https://developers.plnnrly.com/en/docs/api/v2/schemas/project-link/): A named external URL pinned to a project, such as a staging environment, a design file or a repository.
- [SalesInvoice](https://developers.plnnrly.com/en/docs/api/v2/schemas/sales-invoice/): A sales invoice header: what a customer is billed, when it is due, and how far it has got through the accounting sync.
- [SalesInvoiceRow](https://developers.plnnrly.com/en/docs/api/v2/schemas/sales-invoice-row/): One line on a sales invoice: a label, a quantity, a unit price and a VAT percentage.
- [Sprint](https://developers.plnnrly.com/en/docs/api/v2/schemas/sprint/): A sprint: a time-boxed slice of a project's backlog.
- [SubscriptionItem](https://developers.plnnrly.com/en/docs/api/v2/schemas/subscription-item/): One line on a customer subscription: what is being sold, how many, at what purchase and sales price, and at what VAT percentage.
- [SubscriptionProduct](https://developers.plnnrly.com/en/docs/api/v2/schemas/subscription-product/): A sellable subscription product: the organisation's hand-maintained catalogue of what a customer subscription or a subscription type can bill for.
- [SubscriptionType](https://developers.plnnrly.com/en/docs/api/v2/schemas/subscription-type/): A subscription type: the organisation's hand-maintained template a customer subscription is instanced from, carrying the default billing interval and renewal behaviour new subscriptions start with.
- [SubscriptionTypeItem](https://developers.plnnrly.com/en/docs/api/v2/schemas/subscription-type-item/): One template line on a subscription type: what is sold, how many, at what purchase and sales price, and at what VAT percentage.
- [Subtask](https://developers.plnnrly.com/en/docs/api/v2/schemas/subtask/): A checklist subtask on a work item: a title, an optional rich-text note and a ticked-off flag, held in the work item's own checklist order.
- [Task](https://developers.plnnrly.com/en/docs/api/v2/schemas/task/): A kanban task: one card on an employee's board, filed under a budget of a project, carrying an estimate in minutes that time is logged against.
- [Time](https://developers.plnnrly.com/en/docs/api/v2/schemas/time/): A worklog: minutes of work booked by one employee against one project on one calendar day, optionally attached to a task and a work item.
- [Timer](https://developers.plnnrly.com/en/docs/api/v2/schemas/timer/): A running stopwatch: one row per employee per timed record, created when the timer starts and deleted when it is discarded or its minutes are booked.
- [Upload](https://developers.plnnrly.com/en/docs/api/v2/schemas/upload/): An upload ticket: the server's permission for you to place one file's bytes in storage, and the record of what arrived.
- [User](https://developers.plnnrly.com/en/docs/api/v2/schemas/user/): A user: one member of the organisation, as plnnrly's people list shows them.
- [UserTodo](https://developers.plnnrly.com/en/docs/api/v2/schemas/user-todo/): A todo: one unchecked task-list line in a drive document that mentions you.
- [WorkItem](https://developers.plnnrly.com/en/docs/api/v2/schemas/work-item/): A work item: the unit of work a project's backlog and board are made of, addressed by numeric id or by its human-readable issue key (ACM-123) on the same path.
- [WorkItemLink](https://developers.plnnrly.com/en/docs/api/v2/schemas/work-item-link/): A directed link between two work items (`blocks`, `duplicates`, `relates_to` and four more), the rows the linked items section in plnnrly is built from.
- [WorkType](https://developers.plnnrly.com/en/docs/api/v2/schemas/work-type/): A work-item type: the organisation-wide categories work items are filed under (bug, task, story, …), carrying the colour and icon the backlog, board and Gantt render beside them.
- [Workflow](https://developers.plnnrly.com/en/docs/api/v2/schemas/workflow/): A workflow: the named set of statuses a work item moves through, plus the transitions allowed between them.
- [WorkflowStatus](https://developers.plnnrly.com/en/docs/api/v2/schemas/workflow-status/): One status in a workflow: the column a work item sits in, with the colour the badge is drawn in and whether reaching it resolves the item.
- [WorkflowTransition](https://developers.plnnrly.com/en/docs/api/v2/schemas/workflow-transition/): One legal edge of a workflow: the move a work item may make from one status to another, with the label the transition button carries.
