craaft · JSON-LD Context
Craaft Io Context
JSON-LD context defining the semantic vocabulary for Craaft Io from craaft.
44 Classes
169 Properties
4 Namespaces
Namespaces
schema:
https://schema.org/
xsd:
http://www.w3.org/2001/XMLSchema#
dcterms:
http://purl.org/dc/terms/
craaft:
https://craaft.io/schema#
Classes
Error
User
Project
ProjectMemberPreview
BoardMember
BoardMemberInput
BoardAccess
InvitationGrant
Member
InvitationCreate
Invitation
Column
Card
SearchResult
UpcomingCard
Comment
ChecklistItem
Milestone
VersionInfo
PublicBoard
BulkCardsResponse
Attachment
AttentionCard
CardEvent
BoardActivity
CardDetail
GitHubBinding
LinkedPullRequest
CardGitHub
ImportRequest
ImportPreview
ProjectExport
ProjectExportUser
BoardTemplate
BoardTemplateColumn
WebhookDelivery
WebhookSubscription
InboundEmailAddress
InboundAllowedSender
NotificationCardRef
NotificationActor
NotificationRow
NotificationList
ConnectedApp
Properties
| Property | Type | Container |
|---|---|---|
| error | string | |
| id | string | |
| string | ||
| name | string | |
| username | string | |
| avatarUrl | string | |
| hasPassword | boolean | |
| emailVerified | boolean | |
| pendingEmail | string | |
| twoFactorEnabled | boolean | |
| newsletterSubscribed | boolean | |
| emailNotifications | boolean | |
| newsletterAvailable | boolean | |
| isSuperAdmin | boolean | |
| csrfToken | string | |
| workspaceId | string | |
| description | string | |
| brief | string | |
| isFavorite | boolean | |
| publicToken | string | |
| backgroundImage | string | |
| backgroundColor | string | |
| colorScheme | string | |
| textColor | string | |
| showMilestones | boolean | |
| showArchived | boolean | |
| showFiles | boolean | |
| showStandup | boolean | |
| showActivity | boolean | |
| myRole | string | |
| visibility | string | |
| myBoardRole | string | |
| canUploadAttachments | boolean | |
| totalCards | integer | |
| columnCounts | ||
| workspaceName | string | |
| members | list | |
| columns | list | |
| createdAt | dateTime | |
| updatedAt | dateTime | |
| userId | string | |
| role | string | |
| source | string | |
| projectId | string | |
| joinedAt | dateTime | |
| boardAccess | list | |
| boardGrants | list | |
| invitedBy | string | |
| invitedByName | string | |
| expiresAt | dateTime | |
| key | string | |
| title | string | |
| color | string | |
| position | decimal | |
| isDone | boolean | |
| cardLimit | integer | |
| column | string | |
| dueDate | dateTime | |
| assignedUserId | string | |
| assignedUserName | string | |
| size | integer | |
| priority | string | |
| createdBy | string | |
| createdByName | string | |
| updatedBy | string | |
| updatedByName | string | |
| attachmentCount | integer | |
| checklistDone | integer | |
| checklistTotal | integer | |
| tags | list | |
| following | boolean | |
| projectName | string | |
| columnKey | string | |
| columnTitle | string | |
| archived | boolean | |
| cardId | string | |
| authorId | string | |
| body | string | |
| text | string | |
| done | boolean | |
| dueOn | date | |
| achievedAt | dateTime | |
| version | string | |
| commit | string | |
| buildTime | string | |
| project | ||
| cards | list | |
| contentType | string | |
| uploadedBy | string | |
| uploadedByName | string | |
| staleInProgress | boolean | |
| highPriority | boolean | |
| idleByMe | boolean | |
| type | string | |
| fromValue | string | |
| toValue | string | |
| fromName | string | |
| toName | string | |
| fromDetail | string | |
| toDetail | string | |
| actorId | string | |
| actorName | string | |
| cardTitle | string | |
| cardArchived | boolean | |
| excerpt | string | |
| commentDeleted | boolean | |
| card | reference | |
| comments | list | |
| events | list | |
| checklist | list | |
| attachments | list | |
| github | reference | |
| installationId | integer | |
| accountLogin | string | |
| repoId | integer | |
| fullName | string | |
| openColumn | string | |
| mergedColumn | string | |
| suspended | boolean | |
| repo | string | |
| number | integer | |
| url | string | |
| state | string | |
| draft | boolean | |
| author | string | |
| branch | string | |
| enabled | boolean | |
| pullRequests | list | |
| branches | list | |
| file | string | |
| mapping | string | |
| totals | ||
| assignees | ||
| access | list | |
| warnings | list | |
| csv | ||
| exportedAt | dateTime | |
| event | string | |
| status | string | |
| statusCode | integer | |
| attempts | integer | |
| endpointId | string | |
| secret | string | |
| format | string | |
| active | boolean | |
| recentDeliveries | list | |
| token | string | |
| targetColumn | string | |
| aiEnrich | boolean | |
| aiAlways | boolean | |
| aiInstructions | string | |
| pattern | string | |
| addedBy | ||
| needsOwner | boolean | |
| ids | list | |
| kind | string | |
| kinds | list | |
| details | list | |
| commentId | string | |
| actors | list | |
| count | integer | |
| seen | boolean | |
| read | boolean | |
| items | list | |
| nextBefore | dateTime | |
| clientName | string | |
| redirectHost | string | |
| verified | boolean | |
| lastUsedAt | dateTime |
JSON-LD Document
{
"@context": {
"@vocab": "https://craaft.io/schema#",
"schema": "https://schema.org/",
"xsd": "http://www.w3.org/2001/XMLSchema#",
"dcterms": "http://purl.org/dc/terms/",
"craaft": "https://craaft.io/schema#",
"Error": "craaft:Error",
"error": {
"@id": "craaft:error",
"@type": "xsd:string"
},
"User": "craaft:User",
"id": {
"@id": "craaft:id",
"@type": "xsd:string"
},
"email": {
"@id": "craaft:email",
"@type": "xsd:string"
},
"name": {
"@id": "craaft:name",
"@type": "xsd:string"
},
"username": {
"@id": "craaft:username",
"@type": "xsd:string"
},
"avatarUrl": {
"@id": "craaft:avatarUrl",
"@type": "xsd:string"
},
"hasPassword": {
"@id": "craaft:hasPassword",
"@type": "xsd:boolean"
},
"emailVerified": {
"@id": "craaft:emailVerified",
"@type": "xsd:boolean"
},
"pendingEmail": {
"@id": "craaft:pendingEmail",
"@type": "xsd:string"
},
"twoFactorEnabled": {
"@id": "craaft:twoFactorEnabled",
"@type": "xsd:boolean"
},
"newsletterSubscribed": {
"@id": "craaft:newsletterSubscribed",
"@type": "xsd:boolean"
},
"emailNotifications": {
"@id": "craaft:emailNotifications",
"@type": "xsd:boolean"
},
"newsletterAvailable": {
"@id": "craaft:newsletterAvailable",
"@type": "xsd:boolean"
},
"isSuperAdmin": {
"@id": "craaft:isSuperAdmin",
"@type": "xsd:boolean"
},
"csrfToken": {
"@id": "craaft:csrfToken",
"@type": "xsd:string"
},
"Project": "craaft:Project",
"workspaceId": {
"@id": "craaft:workspaceId",
"@type": "xsd:string"
},
"description": {
"@id": "craaft:description",
"@type": "xsd:string"
},
"brief": {
"@id": "craaft:brief",
"@type": "xsd:string"
},
"isFavorite": {
"@id": "craaft:isFavorite",
"@type": "xsd:boolean"
},
"publicToken": {
"@id": "craaft:publicToken",
"@type": "xsd:string"
},
"backgroundImage": {
"@id": "craaft:backgroundImage",
"@type": "xsd:string"
},
"backgroundColor": {
"@id": "craaft:backgroundColor",
"@type": "xsd:string"
},
"colorScheme": {
"@id": "craaft:colorScheme",
"@type": "xsd:string"
},
"textColor": {
"@id": "craaft:textColor",
"@type": "xsd:string"
},
"showMilestones": {
"@id": "craaft:showMilestones",
"@type": "xsd:boolean"
},
"showArchived": {
"@id": "craaft:showArchived",
"@type": "xsd:boolean"
},
"showFiles": {
"@id": "craaft:showFiles",
"@type": "xsd:boolean"
},
"showStandup": {
"@id": "craaft:showStandup",
"@type": "xsd:boolean"
},
"showActivity": {
"@id": "craaft:showActivity",
"@type": "xsd:boolean"
},
"myRole": {
"@id": "craaft:myRole",
"@type": "xsd:string"
},
"visibility": {
"@id": "craaft:visibility",
"@type": "xsd:string"
},
"myBoardRole": {
"@id": "craaft:myBoardRole",
"@type": "xsd:string"
},
"canUploadAttachments": {
"@id": "craaft:canUploadAttachments",
"@type": "xsd:boolean"
},
"totalCards": {
"@id": "craaft:totalCards",
"@type": "xsd:integer"
},
"columnCounts": {
"@id": "craaft:columnCounts"
},
"workspaceName": {
"@id": "craaft:workspaceName",
"@type": "xsd:string"
},
"members": {
"@id": "craaft:members",
"@container": "@list"
},
"columns": {
"@id": "craaft:columns",
"@container": "@list"
},
"createdAt": {
"@id": "craaft:createdAt",
"@type": "xsd:dateTime"
},
"updatedAt": {
"@id": "craaft:updatedAt",
"@type": "xsd:dateTime"
},
"ProjectMemberPreview": "craaft:ProjectMemberPreview",
"BoardMember": "craaft:BoardMember",
"userId": {
"@id": "craaft:userId",
"@type": "xsd:string"
},
"role": {
"@id": "craaft:role",
"@type": "xsd:string"
},
"source": {
"@id": "craaft:source",
"@type": "xsd:string"
},
"BoardMemberInput": "craaft:BoardMemberInput",
"BoardAccess": "craaft:BoardAccess",
"projectId": {
"@id": "craaft:projectId",
"@type": "xsd:string"
},
"InvitationGrant": "craaft:InvitationGrant",
"Member": "craaft:Member",
"joinedAt": {
"@id": "craaft:joinedAt",
"@type": "xsd:dateTime"
},
"boardAccess": {
"@id": "craaft:boardAccess",
"@container": "@list"
},
"InvitationCreate": "craaft:InvitationCreate",
"boardGrants": {
"@id": "craaft:boardGrants",
"@container": "@list"
},
"Invitation": "craaft:Invitation",
"invitedBy": {
"@id": "craaft:invitedBy",
"@type": "xsd:string"
},
"invitedByName": {
"@id": "craaft:invitedByName",
"@type": "xsd:string"
},
"expiresAt": {
"@id": "craaft:expiresAt",
"@type": "xsd:dateTime"
},
"Column": "craaft:Column",
"key": {
"@id": "craaft:key",
"@type": "xsd:string"
},
"title": {
"@id": "craaft:title",
"@type": "xsd:string"
},
"color": {
"@id": "craaft:color",
"@type": "xsd:string"
},
"position": {
"@id": "craaft:position",
"@type": "xsd:decimal"
},
"isDone": {
"@id": "craaft:isDone",
"@type": "xsd:boolean"
},
"cardLimit": {
"@id": "craaft:cardLimit",
"@type": "xsd:integer"
},
"Card": "craaft:Card",
"column": {
"@id": "craaft:column",
"@type": "xsd:string"
},
"dueDate": {
"@id": "craaft:dueDate",
"@type": "xsd:dateTime"
},
"assignedUserId": {
"@id": "craaft:assignedUserId",
"@type": "xsd:string"
},
"assignedUserName": {
"@id": "craaft:assignedUserName",
"@type": "xsd:string"
},
"size": {
"@id": "craaft:size",
"@type": "xsd:integer"
},
"priority": {
"@id": "craaft:priority",
"@type": "xsd:string"
},
"createdBy": {
"@id": "craaft:createdBy",
"@type": "xsd:string"
},
"createdByName": {
"@id": "craaft:createdByName",
"@type": "xsd:string"
},
"updatedBy": {
"@id": "craaft:updatedBy",
"@type": "xsd:string"
},
"updatedByName": {
"@id": "craaft:updatedByName",
"@type": "xsd:string"
},
"attachmentCount": {
"@id": "craaft:attachmentCount",
"@type": "xsd:integer"
},
"checklistDone": {
"@id": "craaft:checklistDone",
"@type": "xsd:integer"
},
"checklistTotal": {
"@id": "craaft:checklistTotal",
"@type": "xsd:integer"
},
"tags": {
"@id": "craaft:tags",
"@container": "@list"
},
"following": {
"@id": "craaft:following",
"@type": "xsd:boolean"
},
"SearchResult": "craaft:SearchResult",
"projectName": {
"@id": "craaft:projectName",
"@type": "xsd:string"
},
"columnKey": {
"@id": "craaft:columnKey",
"@type": "xsd:string"
},
"columnTitle": {
"@id": "craaft:columnTitle",
"@type": "xsd:string"
},
"archived": {
"@id": "craaft:archived",
"@type": "xsd:boolean"
},
"UpcomingCard": "craaft:UpcomingCard",
"Comment": "craaft:Comment",
"cardId": {
"@id": "craaft:cardId",
"@type": "xsd:string"
},
"authorId": {
"@id": "craaft:authorId",
"@type": "xsd:string"
},
"body": {
"@id": "craaft:body",
"@type": "xsd:string"
},
"ChecklistItem": "craaft:ChecklistItem",
"text": {
"@id": "craaft:text",
"@type": "xsd:string"
},
"done": {
"@id": "craaft:done",
"@type": "xsd:boolean"
},
"Milestone": "craaft:Milestone",
"dueOn": {
"@id": "craaft:dueOn",
"@type": "xsd:date"
},
"achievedAt": {
"@id": "craaft:achievedAt",
"@type": "xsd:dateTime"
},
"VersionInfo": "craaft:VersionInfo",
"version": {
"@id": "craaft:version",
"@type": "xsd:string"
},
"commit": {
"@id": "craaft:commit",
"@type": "xsd:string"
},
"buildTime": {
"@id": "craaft:buildTime",
"@type": "xsd:string"
},
"PublicBoard": "craaft:PublicBoard",
"project": {
"@id": "craaft:project"
},
"cards": {
"@id": "craaft:cards",
"@container": "@list"
},
"BulkCardsResponse": "craaft:BulkCardsResponse",
"Attachment": "craaft:Attachment",
"contentType": {
"@id": "craaft:contentType",
"@type": "xsd:string"
},
"uploadedBy": {
"@id": "craaft:uploadedBy",
"@type": "xsd:string"
},
"uploadedByName": {
"@id": "craaft:uploadedByName",
"@type": "xsd:string"
},
"AttentionCard": "craaft:AttentionCard",
"staleInProgress": {
"@id": "craaft:staleInProgress",
"@type": "xsd:boolean"
},
"highPriority": {
"@id": "craaft:highPriority",
"@type": "xsd:boolean"
},
"idleByMe": {
"@id": "craaft:idleByMe",
"@type": "xsd:boolean"
},
"CardEvent": "craaft:CardEvent",
"type": {
"@id": "craaft:type",
"@type": "xsd:string"
},
"fromValue": {
"@id": "craaft:fromValue",
"@type": "xsd:string"
},
"toValue": {
"@id": "craaft:toValue",
"@type": "xsd:string"
},
"fromName": {
"@id": "craaft:fromName",
"@type": "xsd:string"
},
"toName": {
"@id": "craaft:toName",
"@type": "xsd:string"
},
"fromDetail": {
"@id": "craaft:fromDetail",
"@type": "xsd:string"
},
"toDetail": {
"@id": "craaft:toDetail",
"@type": "xsd:string"
},
"actorId": {
"@id": "craaft:actorId",
"@type": "xsd:string"
},
"actorName": {
"@id": "craaft:actorName",
"@type": "xsd:string"
},
"BoardActivity": "craaft:BoardActivity",
"cardTitle": {
"@id": "craaft:cardTitle",
"@type": "xsd:string"
},
"cardArchived": {
"@id": "craaft:cardArchived",
"@type": "xsd:boolean"
},
"excerpt": {
"@id": "craaft:excerpt",
"@type": "xsd:string"
},
"commentDeleted": {
"@id": "craaft:commentDeleted",
"@type": "xsd:boolean"
},
"CardDetail": "craaft:CardDetail",
"card": {
"@id": "craaft:card",
"@type": "@id"
},
"comments": {
"@id": "craaft:comments",
"@container": "@list"
},
"events": {
"@id": "craaft:events",
"@container": "@list"
},
"checklist": {
"@id": "craaft:checklist",
"@container": "@list"
},
"attachments": {
"@id": "craaft:attachments",
"@container": "@list"
},
"github": {
"@id": "craaft:github",
"@type": "@id"
},
"GitHubBinding": "craaft:GitHubBinding",
"installationId": {
"@id": "craaft:installationId",
"@type": "xsd:integer"
},
"accountLogin": {
"@id": "craaft:accountLogin",
"@type": "xsd:string"
},
"repoId": {
"@id": "craaft:repoId",
"@type": "xsd:integer"
},
"fullName": {
"@id": "craaft:fullName",
"@type": "xsd:string"
},
"openColumn": {
"@id": "craaft:openColumn",
"@type": "xsd:string"
},
"mergedColumn": {
"@id": "craaft:mergedColumn",
"@type": "xsd:string"
},
"suspended": {
"@id": "craaft:suspended",
"@type": "xsd:boolean"
},
"LinkedPullRequest": "craaft:LinkedPullRequest",
"repo": {
"@id": "craaft:repo",
"@type": "xsd:string"
},
"number": {
"@id": "craaft:number",
"@type": "xsd:integer"
},
"url": {
"@id": "craaft:url",
"@type": "xsd:string"
},
"state": {
"@id": "craaft:state",
"@type": "xsd:string"
},
"draft": {
"@id": "craaft:draft",
"@type": "xsd:boolean"
},
"author": {
"@id": "craaft:author",
"@type": "xsd:string"
},
"branch": {
"@id": "craaft:branch",
"@type": "xsd:string"
},
"CardGitHub": "craaft:CardGitHub",
"enabled": {
"@id": "craaft:enabled",
"@type": "xsd:boolean"
},
"pullRequests": {
"@id": "craaft:pullRequests",
"@container": "@list"
},
"branches": {
"@id": "craaft:branches",
"@container": "@list"
},
"ImportRequest": "craaft:ImportRequest",
"file": {
"@id": "craaft:file",
"@type": "xsd:string"
},
"mapping": {
"@id": "craaft:mapping",
"@type": "xsd:string"
},
"ImportPreview": "craaft:ImportPreview",
"totals": {
"@id": "craaft:totals"
},
"assignees": {
"@id": "craaft:assignees"
},
"access": {
"@id": "craaft:access",
"@container": "@list"
},
"warnings": {
"@id": "craaft:warnings",
"@container": "@list"
},
"csv": {
"@id": "craaft:csv"
},
"ProjectExport": "craaft:ProjectExport",
"exportedAt": {
"@id": "craaft:exportedAt",
"@type": "xsd:dateTime"
},
"ProjectExportUser": "craaft:ProjectExportUser",
"BoardTemplate": "craaft:BoardTemplate",
"BoardTemplateColumn": "craaft:BoardTemplateColumn",
"WebhookDelivery": "craaft:WebhookDelivery",
"event": {
"@id": "craaft:event",
"@type": "xsd:string"
},
"status": {
"@id": "craaft:status",
"@type": "xsd:string"
},
"statusCode": {
"@id": "craaft:statusCode",
"@type": "xsd:integer"
},
"attempts": {
"@id": "craaft:attempts",
"@type": "xsd:integer"
},
"WebhookSubscription": "craaft:WebhookSubscription",
"endpointId": {
"@id": "craaft:endpointId",
"@type": "xsd:string"
},
"secret": {
"@id": "craaft:secret",
"@type": "xsd:string"
},
"format": {
"@id": "craaft:format",
"@type": "xsd:string"
},
"active": {
"@id": "craaft:active",
"@type": "xsd:boolean"
},
"recentDeliveries": {
"@id": "craaft:recentDeliveries",
"@container": "@list"
},
"InboundEmailAddress": "craaft:InboundEmailAddress",
"token": {
"@id": "craaft:token",
"@type": "xsd:string"
},
"targetColumn": {
"@id": "craaft:targetColumn",
"@type": "xsd:string"
},
"aiEnrich": {
"@id": "craaft:aiEnrich",
"@type": "xsd:boolean"
},
"aiAlways": {
"@id": "craaft:aiAlways",
"@type": "xsd:boolean"
},
"aiInstructions": {
"@id": "craaft:aiInstructions",
"@type": "xsd:string"
},
"InboundAllowedSender": "craaft:InboundAllowedSender",
"pattern": {
"@id": "craaft:pattern",
"@type": "xsd:string"
},
"addedBy": {
"@id": "craaft:addedBy"
},
"needsOwner": {
"@id": "craaft:needsOwner",
"@type": "xsd:boolean"
},
"NotificationCardRef": "craaft:NotificationCardRef",
"NotificationActor": "craaft:NotificationActor",
"NotificationRow": "craaft:NotificationRow",
"ids": {
"@id": "craaft:ids",
"@container": "@list"
},
"kind": {
"@id": "craaft:kind",
"@type": "xsd:string"
},
"kinds": {
"@id": "craaft:kinds",
"@container": "@list"
},
"details": {
"@id": "craaft:details",
"@container": "@list"
},
"commentId": {
"@id": "craaft:commentId",
"@type": "xsd:string"
},
"actors": {
"@id": "craaft:actors",
"@container": "@list"
},
"count": {
"@id": "craaft:count",
"@type": "xsd:integer"
},
"seen": {
"@id": "craaft:seen",
"@type": "xsd:boolean"
},
"read": {
"@id": "craaft:read",
"@type": "xsd:boolean"
},
"NotificationList": "craaft:NotificationList",
"items": {
"@id": "craaft:items",
"@container": "@list"
},
"nextBefore": {
"@id": "craaft:nextBefore",
"@type": "xsd:dateTime"
},
"ConnectedApp": "craaft:ConnectedApp",
"clientName": {
"@id": "craaft:clientName",
"@type": "xsd:string"
},
"redirectHost": {
"@id": "craaft:redirectHost",
"@type": "xsd:string"
},
"verified": {
"@id": "craaft:verified",
"@type": "xsd:boolean"
},
"lastUsedAt": {
"@id": "craaft:lastUsedAt",
"@type": "xsd:dateTime"
}
},
"@type": "schema:Dataset",
"schema:name": "craaft API JSON-LD context",
"schema:description": "A JSON-LD @context for the objects craaft's own API contract declares: one class per component schema, one property per declared field, typed from the contract. Derived by script (derive-json-ld.py, 2026-11-04) from openapi/craaft-io-openapi.yml.",
"dcterms:created": "2026-11-04",
"dcterms:source": [
"openapi/craaft-io-openapi.yml"
]
}