Backward Compatibility
Certain Unito features necessitate additional configuration to operate as intended.
Users
By assigning a USER semantic to a field of type REFERENCE, Unito can interpret the values of this field as
users within that system. The referenced items must adhere to the following schema;
- One field with the
DISPLAY_NAMEsemantic. - Zero or more fields of type
EMAIL.
No matter where your users are first encountered, be it an author on a comment, an assignee on a task, or an
invitee to an event, Unito might try to load them from a relation at the root of your graph. For this reason,
to enable full user support, you can assign a USERS semantic to a relation present on your root item.
Subtasks
By assigning a SUBTASKS semantic to a subitem relationship, Unito will treat that
relation the same way it treats subtasks for classic connectors. That relation must specify its schema as being the
same one as the main item using the __self keyword.
Attachments
By assigning an ATTACHMENTS semantic to a subitem relationship, Unito will treat that
relation the same way it treats streamable attachments for classic connectors. That relation must specify several
fields that are necessary for the feature to operate correctly;
{
name: 'attachments',
label: 'Attachments',
semantic: Api.RelationSemantic.ATTACHMENTS,
path: '/path/to/attachments',
schema: {
label: 'Attachment',
fields: [
{
name: 'id',
label: 'id',
type: Api.FieldValueType.STRING,
},
{
name: 'name',
label: 'name',
type: Api.FieldValueType.STRING,
semantic: Api.Semantic.DISPLAY_NAME,
},
{
name: 'url',
label: 'url',
type: Api.FieldValueType.URL,
// semantic: Api.Semantic.PROVIDER_URL (if applicable)
},
{
name: 'sizeInBytes',
label: 'size',
type: Api.FieldValueType.NUMBER,
},
{
name: 'mimeType',
label: 'size',
type: Api.FieldValueType.STRING,
},
{
name: 'file',
label: 'file',
type: Api.FieldValueType.BLOB,
},
],
},
}
Comments
By assigning a COMMENTS semantic to a subitem relationship, Unito will treat that
relation the same way it treats comments for classic connectors. That relation must specify several fields that are
necessary for the feature to operate correctly;
- One field with the
DESCRIPTIONsemantic. - One field with the
CREATED_ATsemantic. - One field with the
UPDATED_ATsemantic. - One field with the
USERsemantic representing the author of that comment. See the Users section for details.
In addition to the above, the comments collection page must properly allow for filtering and selection of specific fields, including subfields. See the Select and Filters page for more details. When querying for your comments, Unito will ask for all of these fields. An example interaction might look like this;
{
"info": {},
"data": [
{
"path": "/tasks/1/comments/1",
"fields": {
"content": "This task is sooo good!",
"createdAt": "2024-01-01T16:43:23Z",
"updatedAt": "2024-01-01T16:43:23Z",
"author": {
"path": "/users/1",
"fields": {
"name": "John Doe"
}
}
}
}
]
}