Cozy Todos doctypes¶
io.cozy.todos.list
¶
This doctype represents a todo list:
title
: {string} - The list titledescription
: {string} - The list descriptionlimitDate
: {date} - The limit date to complete all the items.
Relationships¶
items
: {object} - The list items
Example¶
{ "_id": "2165d9a310deadbeeffc08d54c45102", "title": "Create a loan file", "description": "Loan money to buy a house.", "limitDate": "2020-02-01T23:59:59Z", "relationships": { "items": { "data": [ { "_id": "8bffbc24e67716b63e08c71bd0059fea", "_type": "io.cozy.todos.item" }, { "_id": "68a74e03722f02b1a6fc6a4508015de0", "_type": "io.cozy.todos.item" } ] } } }
io.cozy.todos.item
¶
This doctype represents a todo item:
label
: {string} - The label of the todo item, e.g. “Do stuff”.description
: {string} - A description of the item.done
: {bool} - Whether the item is done or not.limitDate
: {date} - The limit date to complete this item.completionDate
: {date} - The actual completion date of the item.
Relationships¶
files
: {object} - Files linked to the todo item.contacts
: {object} - Contacts linked to the todo item.docrules
: {object} - The rules used to match documents from other relationships, e.g. a rule used to match specific files, such as payslips. See below or in thedocrules
doctype for more details.
DocRules¶
When a document has been linked to a todo through the use of a rule, the rule that was used to find the document is saved in the metadata
of the relationship.
metadata
: {object}docrules
: {object}matchedBy
: {string} : The rule ID{...}
: additional fields used as rule parameters, e.g.limit
,date
, etc.
In the example below, a docrule is targeting the last 3 files payslips from a given date.
Example¶
{ "_id": "8bffbc24e67716b63e08c71bd0059fea", "label": "Get the last 3 payslips", "description": "This is required to prove the income", "done": false, "limitDate": "2020-01-31T23:59:59Z", "completionDate": null, "relationships": { "files": { "data": [ { "_id": "8bffbc24e67716b63e08c71bd0059fea", "_type": "io.cozy.files", "metadata": { "docrules": { "matchedBy": "io.cozy.docrules/payslip", "date": "2020-01-01T23:59:59Z", "limit": 3 } } }, { "_id": "8bffbc24e67716b63e08c71bd0068f52", "_type": "io.cozy.files", "metadata": { "docrules": { "matchedBy": "io.cozy.docrules/payslip", "date": "2020-01-01T23:59:59Z", "limit": 3 } } } ] }, "contacts": { "data": [ { "_id": "d5fb210882d78ab30dd991fb021ae450", "_type": "io.cozy.contacts" } ] }, "docrules": { "data": [ { "_id": "io.cozy.docrules/payslips", "_type": "io.cozy.docrules" } ] } } }