json.schema.entity.teams.team.json Maven / Gradle / Ivy
{
"$id": "https://open-metadata.org/schema/entity/teams/team.json",
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Team",
"description": "This schema defines the Team entity. A `Team` is a group of zero or more users and/or other teams. Teams can own zero or more data assets. Hierarchical teams are supported `Organization` -> `BusinessUnit` -> `Division` -> `Department`.",
"type": "object",
"javaType": "org.openmetadata.schema.entity.teams.Team",
"javaInterfaces": ["org.openmetadata.schema.EntityInterface"],
"definitions": {
"teamType" : {
"description" : "Organization is the highest level entity. An Organization has one of more Business Units, Division, Departments, Group, or Users. A Business Unit has one or more Divisions, Departments, Group, or Users. A Division has one or more Divisions, Departments, Group, or Users. A Department has one or more Departments, Group, or Users. A Group has only Users",
"type" : "string",
"enum": [
"Group",
"Department",
"Division",
"BusinessUnit",
"Organization"
],
"default": "Group"
}
},
"properties": {
"id": {
"$ref": "../../type/basic.json#/definitions/uuid"
},
"teamType": {
"description": "Team type",
"$ref": "#/definitions/teamType"
},
"name": {
"description": "A unique name of the team typically the team ID from an identity provider. Example - group Id from LDAP.",
"$ref": "../../type/basic.json#/definitions/entityName"
},
"email": {
"description": "Email address of the team.",
"$ref": "../../type/basic.json#/definitions/email"
},
"fullyQualifiedName": {
"description": "FullyQualifiedName same as `name`.",
"$ref": "../../type/basic.json#/definitions/fullyQualifiedEntityName"
},
"displayName": {
"description": "Name used for display purposes. Example 'Data Science team'.",
"type": "string"
},
"description": {
"description": "Description of the team.",
"$ref": "../../type/basic.json#/definitions/markdown"
},
"version": {
"description": "Metadata version of the entity.",
"$ref": "../../type/entityHistory.json#/definitions/entityVersion"
},
"updatedAt": {
"description": "Last update time corresponding to the new version of the entity in Unix epoch time milliseconds.",
"$ref": "../../type/basic.json#/definitions/timestamp"
},
"updatedBy": {
"description": "User who made the update.",
"type": "string"
},
"href": {
"description": "Link to the resource corresponding to this entity.",
"$ref": "../../type/basic.json#/definitions/href"
},
"profile": {
"description": "Team profile information.",
"$ref": "../../type/profile.json"
},
"parents" : {
"description" : "Parent teams. For an `Organization` the `parent` is always null. A `BusinessUnit` always has only one parent of type `BusinessUnit` or an `Organization`. A `Division` can have multiple parents of type `BusinessUnit` or `Division`. A `Department` can have multiple parents of type `Division` or `Department`.",
"$ref" : "../../type/entityReferenceList.json"
},
"children" : {
"description" : "Children teams. An `Organization` can have `BusinessUnit`, `Division` or `Department` as children. A `BusinessUnit` can have `BusinessUnit`, `Division`, or `Department` as children. A `Division` can have `Division` or `Department` as children. A `Department` can have `Department` as children.",
"$ref" : "../../type/entityReferenceList.json"
},
"users": {
"description": "Users that are part of the team.",
"$ref": "../../type/entityReferenceList.json",
"default": null
},
"childrenCount": {
"description" : "Total count of Children teams.",
"type": "integer"
},
"userCount": {
"description": "Total count of users that are part of the team.",
"type": "integer"
},
"owns": {
"description": "List of entities owned by the team.",
"$ref": "../../type/entityReferenceList.json"
},
"owners": {
"description": "Owner of this team. ",
"$ref": "../../type/entityReferenceList.json",
"default": null
},
"isJoinable": {
"description": "Can any user join this team during sign up? Value of true indicates yes, and false no.",
"type": "boolean",
"default": true
},
"changeDescription": {
"description": "Change that lead to this version of the entity.",
"$ref": "../../type/entityHistory.json#/definitions/changeDescription"
},
"deleted": {
"description": "When `true` indicates the entity has been soft deleted.",
"type": "boolean",
"default": false
},
"defaultRoles": {
"description": "Default roles of a team. These roles will be inherited by all the users that are part of this team.",
"$ref": "../../type/entityReferenceList.json"
},
"inheritedRoles": {
"description": "Roles that a team is inheriting through membership in teams that have set team default roles.",
"$ref": "../../type/entityReferenceList.json"
},
"policies": {
"description": "Policies that is attached to this team.",
"$ref": "../../type/entityReferenceList.json"
},
"domains" : {
"description": "Domain the Team belongs to.",
"$ref": "../../type/entityReferenceList.json"
}
},
"required": ["id", "name"],
"additionalProperties": false
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy