{
	"title": "User",
	"description": "A registered user.",
	"properties": {
		"_href": {
			"type": "string",
			"apiSummary": true,
			"readOnly": true
		},
		"affiliation": {
			"type": "string",
			"multilingual": true,
			"apiSummary": true,
			"validation": [
				"nullable"
			]
		},
		"authStr": {
			"type": "string",
			"validation": [
				"nullable"
			]
		},
		"billingAddress": {
			"type": "string",
			"validation": [
				"nullable"
			]
		},
		"biography": {
			"type": "string",
			"multilingual": true,
			"apiSummary": true,
			"validation": [
				"nullable"
			]
		},
		"country": {
			"type": "string",
			"validation": [
				"nullable"
			]
		},
		"dateRegistered": {
			"type": "string",
			"validation": [
				"date:Y-m-d H:i:s"
			]
		},
		"dateValidated": {
			"type": "string",
			"validation": [
				"date:Y-m-d H:i:s",
				"nullable"
			]
		},
		"dateLastEmail": {
			"type": "string",
			"validation": [
				"date:Y-m-d H:i:s",
				"nullable"
			]
		},
		"dateLastLogin": {
			"type": "string",
			"validation": [
				"date:Y-m-d H:i:s",
				"nullable"
			]
		},
		"apiKey": {
			"type": "string",
			"validation": [
				"nullable"
			]
		},
		"apiKeyEnabled": {
			"type": "boolean",
			"validation": [
				"nullable"
			]
		},
		"inlineHelp": {
			"type": "boolean",
			"validation": [
				"nullable"
			]
		},
		"disabled": {
			"type": "boolean",
			"apiSummary": true
		},
		"disabledReason": {
			"type": "string",
			"validation": [
				"nullable"
			]
		},
		"email": {
			"type": "string",
			"apiSummary": true,
			"validation": [
				"email_or_localhost"
			]
		},
		"familyName": {
			"type": "string",
			"multilingual": true,
			"apiSummary": true,
			"validation": [
				"nullable"
			]
		},
		"fullName": {
			"type": "string",
			"apiSummary": true,
			"readOnly": true
		},
		"givenName": {
			"type": "string",
			"apiSummary": true,
			"multilingual": true
		},
		"gossip": {
			"type": "string",
			"apiSummary": true,
			"validation": [
				"nullable"
			]
		},
		"groups": {
			"type": "array",
			"apiSummary": true,
			"readOnly": true,
			"items": {
				"$ref": "#/definitions/UserGroup"
			}
		},
		"id": {
			"type": "integer",
			"apiSummary": true,
			"readOnly": true
		},
		"profileImage": {
			"type": "object",
			"validation": [
				"nullable"
			],
			"properties": {
				"dateUploaded": {
					"type": "string"
				},
				"name": {
					"type": "string"
				},
				"uploadName": {
					"type": "string"
				},
				"height": {
					"type": "integer"
				},
				"width": {
					"type": "integer"
				}
			}
		},
		"interests": {
			"type": "array",
			"readOnly": true,
			"apiSummary": true,
			"items": {
				"$ref": "#/definitions/UserInterest"
			}
		},
		"locales": {
			"type": "array",
			"items": {
				"type": "string",
				"validation": [
					"regex:/^([a-z]{2})((_[A-Z]{2})?)(@[a-z]{0,})?$/"
				]
			}
		},
		"mailingAddress": {
			"type": "string",
			"validation": [
				"nullable"
			]
		},
		"mustChangePassword": {
			"type": "boolean"
		},
		"orcid": {
			"type": "string",
			"apiSummary": true,
			"validation": [
				"orcid",
				"nullable"
			]
		},
		"password": {
			"type": "string",
			"writeOnly": true
		},
		"phone": {
			"type": "string",
			"validation": [
				"nullable"
			]
		},
		"preferredPublicName": {
			"type": "string",
			"description": "An optional field for users to specify how they prefer to be identified.",
			"multilingual": true,
			"apiSummary": true,
			"validation": [
				"nullable"
			]
		},
		"preferredAvatarInitials": {
			"type": "string",
			"description": "An optional field for users to specify the initials that they want to be displayed in their avatars.",
			"multilingual": false,
			"apiSummary": false,
			"validation": [
				"nullable",
				"max:2"
			]
		},
		"signature": {
			"type": "string",
			"multilingual": true,
			"validation": [
				"nullable"
			]
		},
		"url": {
			"type": "string",
			"validation": [
				"url",
				"nullable"
			]
		},
		"userName": {
			"type": "string",
			"apiSummary": true
		},
		"orcidAccessToken": {
			"type": "string",
			"apiSummary": true,
			"validation": [
				"nullable"
			]
		},
		"orcidAccessScope": {
			"type": "string",
			"apiSummary": true,
			"validation": [
				"nullable"
			]
		},
		"orcidRefreshToken": {
			"type": "string",
			"apiSummary": true,
			"validation": [
				"nullable"
			]
		},
		"orcidAccessExpiresOn": {
			"type": "string",
			"apiSummary": true,
			"validation": [
				"nullable"
			]
		},
		"orcidAccessDenied": {
			"type": "string",
			"apiSummary": true,
			"validation": [
				"nullable"
			]
		},
		"orcidEmailToken": {
			"type": "string",
			"apiSummary": true,
			"validation": [
				"nullable"
			]
		},
		"orcidIsVerified": {
			"type": "boolean",
			"apiSummary": true,
			"validation": [
				"nullable"
			]
		},
		"orcidReviewPutCode": {
			"type": "string",
			"apiSummary": true,
			"validation": [
				"nullable"
			]
		},
		"rememberToken": {
			"type": "string",
			"writeOnly": true,
			"validation": [
				"nullable"
			]
		},
		"stageAssignments": {
			"apiSummary": true,
			"readOnly": true,
			"type": "array",
			"items": {
				"type": "object",
				"properties": {
					"stageAssignmentId": {
						"type": "integer"
					},
					"stageAssignmentUserGroup": {
						"type": "object",
						"$ref": "#/definitions/UserGroup"
					},
					"stageAssignmentStageId": {
						"type": "integer"
					},
					"stageAssignmentStage": {
						"type": "object",
						"properties": {
							"id": {
								"type": "string"
							},
							"label": {
								"type": "string"
							}
						}
					},
					"canChangeMetadata": {
						"type": "boolean"
					},
					"recommendOnly": {
						"type": "boolean"
					}
				}
			}
		},
		"displayInitials": {
			"description": "The initials that will be displayed for a user.",
			"type": "string",
			"apiSummary": true
		},
		"orcidDisplayValue": {
			"type": "string",
			"apiSummary": true,
			"readOnly": true,
			"validation": [
				"nullable"
			]
		},
		"canLoginAs": {
			"type": "boolean",
			"description": "Whether the current user can log in as this user.",
			"readOnly": true,
			"apiSummary": true,
			"apiDetail": true
		},
		"canMergeUsers": {
			"type": "boolean",
			"description": "Whether the current user can merge this user account with another.",
			"readOnly": true,
			"apiSummary": true,
			"apiDetail": true
		}
	}
}
