UserDto

JSON Schema for the DSP-API (DaSCH Service Platform) UserDto object, derived from the live OpenAPI 3.1 description published at https://api.dasch.swiss/api/docs/docs.yaml

EducationHigher EducationUniversitySwitzerlandResearch DataOpen AccessInstitutional RepositoryLibraryDigital Humanities

Properties

Name Type Description
id string
username string
email string
givenName string
familyName string
status boolean
lang string
groups array
projects array
permissions object
View JSON Schema on GitHub

JSON Schema

university-of-basel-user-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/university-of-basel/main/json-schema/university-of-basel-userdto-schema.json",
  "title": "UserDto",
  "description": "JSON Schema for the DSP-API (DaSCH Service Platform) UserDto object, derived from the live OpenAPI 3.1 description published at https://api.dasch.swiss/api/docs/docs.yaml",
  "type": "object",
  "required": [
    "id",
    "username",
    "email",
    "givenName",
    "familyName",
    "status",
    "lang",
    "permissions"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "username": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "givenName": {
      "type": "string"
    },
    "familyName": {
      "type": "string"
    },
    "status": {
      "type": "boolean"
    },
    "lang": {
      "type": "string"
    },
    "groups": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/Group"
      }
    },
    "projects": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/Project"
      }
    },
    "permissions": {
      "$ref": "#/$defs/PermissionsDataADM"
    }
  },
  "$defs": {
    "Active": {
      "title": "Active",
      "type": "object"
    },
    "CanJoin": {
      "title": "CanJoin",
      "type": "object"
    },
    "CannotJoin": {
      "title": "CannotJoin",
      "type": "object"
    },
    "Group": {
      "title": "Group",
      "type": "object",
      "required": [
        "id",
        "name",
        "status",
        "selfjoin"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "descriptions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/StringLiteralV2"
          }
        },
        "project": {
          "$ref": "#/$defs/Project"
        },
        "status": {
          "type": "boolean"
        },
        "selfjoin": {
          "type": "boolean"
        }
      }
    },
    "Inactive": {
      "title": "Inactive",
      "type": "object"
    },
    "LanguageTaggedStringLiteralV2": {
      "title": "LanguageTaggedStringLiteralV2",
      "type": "object",
      "required": [
        "value",
        "language"
      ],
      "properties": {
        "value": {
          "type": "string"
        },
        "language": {
          "type": "string"
        }
      }
    },
    "Logo": {
      "title": "Logo",
      "type": "object",
      "required": [
        "value"
      ],
      "properties": {
        "value": {
          "type": "string"
        }
      }
    },
    "Longname": {
      "title": "Longname",
      "type": "object",
      "required": [
        "value"
      ],
      "properties": {
        "value": {
          "type": "string"
        }
      }
    },
    "Map_Seq_IRI": {
      "title": "Map_Seq_IRI",
      "type": "object",
      "additionalProperties": {
        "type": "array",
        "items": {
          "type": "string"
        }
      }
    },
    "Map_Set_PermissionADM": {
      "title": "Map_Set_PermissionADM",
      "type": "object",
      "additionalProperties": {
        "type": "array",
        "uniqueItems": true,
        "items": {
          "$ref": "#/$defs/PermissionADM"
        }
      }
    },
    "PermissionADM": {
      "title": "PermissionADM",
      "type": "object",
      "required": [
        "name"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "additionalInformation": {
          "type": "string"
        },
        "permissionCode": {
          "type": "integer",
          "format": "int32"
        }
      }
    },
    "PermissionsDataADM": {
      "title": "PermissionsDataADM",
      "type": "object",
      "required": [
        "groupsPerProject",
        "administrativePermissionsPerProject"
      ],
      "properties": {
        "groupsPerProject": {
          "$ref": "#/$defs/Map_Seq_IRI"
        },
        "administrativePermissionsPerProject": {
          "$ref": "#/$defs/Map_Set_PermissionADM"
        }
      }
    },
    "PlainStringLiteralV2": {
      "title": "PlainStringLiteralV2",
      "type": "object",
      "required": [
        "value"
      ],
      "properties": {
        "value": {
          "type": "string"
        }
      }
    },
    "Project": {
      "title": "Project",
      "type": "object",
      "required": [
        "id",
        "shortname",
        "shortcode",
        "status",
        "selfjoin"
      ],
      "properties": {
        "id": {
          "description": "IRI for a project.",
          "type": "string"
        },
        "shortname": {
          "$ref": "#/$defs/Shortname"
        },
        "shortcode": {
          "$ref": "#/$defs/Shortcode"
        },
        "longname": {
          "$ref": "#/$defs/Longname"
        },
        "description": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/StringLiteralV2"
          }
        },
        "keywords": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "logo": {
          "$ref": "#/$defs/Logo"
        },
        "ontologies": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "$ref": "#/$defs/Status"
        },
        "selfjoin": {
          "$ref": "#/$defs/SelfJoin"
        },
        "allowedCopyrightHolders": {
          "type": "array",
          "uniqueItems": true,
          "items": {
            "type": "string"
          }
        },
        "enabledLicenses": {
          "type": "array",
          "uniqueItems": true,
          "items": {
            "type": "string"
          }
        }
      }
    },
    "SelfJoin": {
      "title": "SelfJoin",
      "oneOf": [
        {
          "$ref": "#/$defs/CanJoin"
        },
        {
          "$ref": "#/$defs/CannotJoin"
        }
      ]
    },
    "Shortcode": {
      "title": "Shortcode",
      "type": "object",
      "required": [
        "value"
      ],
      "properties": {
        "value": {
          "type": "string"
        }
      }
    },
    "Shortname": {
      "title": "Shortname",
      "type": "object",
      "required": [
        "value"
      ],
      "properties": {
        "value": {
          "type": "string"
        }
      }
    },
    "Status": {
      "title": "Status",
      "oneOf": [
        {
          "$ref": "#/$defs/Active"
        },
        {
          "$ref": "#/$defs/Inactive"
        }
      ]
    },
    "StringLiteralV2": {
      "title": "StringLiteralV2",
      "oneOf": [
        {
          "$ref": "#/$defs/LanguageTaggedStringLiteralV2"
        },
        {
          "$ref": "#/$defs/PlainStringLiteralV2"
        }
      ]
    }
  }
}