{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "additionalProperties": false,
    "properties": {
        "emailAddress": {
            "pattern": "^[^@^\\s]+@[^@^\\.^\\s]+(\\.[^@^\\.^\\s]+)+$",
            "type": "string"
        },
        "hashpw": {
            "description": "set to False to skip password hashing",
            "type": "boolean"
        },
        "name": {
            "maxLength": 255,
            "minLength": 1,
            "type": "string"
        },
        "password": {
            "maxLength": 255,
            "minLength": 10,
            "type": "string"
        },
        "phoneNumber": {
            "pattern": "^$|^\\+?([\\d\\s()-]){9,20}$",
            "type": "string"
        },
        "role": {
            "enum": [
                "buyer",
                "supplier",
                "admin",
                "admin-ccs-category",
                "admin-ccs-sourcing",
                "admin-manager",
                "admin-framework-manager",
                "admin-ccs-data-controller"
            ]
        },
        "supplierId": {
            "type": "integer"
        }
    },
    "required": [
        "emailAddress",
        "name",
        "password",
        "role"
    ],
    "title": "API Updater Schema",
    "type": "object"
}