Skip to content
Snippets Groups Projects
rave-json.json 9.64 KiB
Newer Older
{
    "$schema": "https://json-schema.org/draft-04/schema#",
    "definitions": {
        "serviceError": {
            "type": "object",
            "required": ["errorMessage"],
            "properties": {
                "errorMessage": {"type": "string"}
            }
        },
        "mobileCarrier": {
            "type": "object",
            "required": [
                "name",
                "id"
            ],
            "properties": {
                "name": {"type": "string"},
                "id": {"type": "integer"}
            }
        },
        "raveGroup": {
            "type": "object",
            "required": [
                "name",
                "description",
                "keyword"
            ],
            "properties": {
                "name": {"type": "string"},
                "description": {"type": "string"},
                "keyword": {"type": "string"},
                "alertPhoneDefault": {"type": "boolean"},
                "alertEmailDefault": {"type": "boolean"},
                "officialCircle": {"type": "boolean"},
                "isPublic": {"type": "boolean"},
                "anyoneCanPost": {"type": "boolean"},
                "numSubscriptions": {"type": "integer"},
                "id": {"type": "integer"}
            }
        },
        "listMembers": {
            "type": "object",
            "properties": {
                "listMember": {
                    "type": "array",
                    "items": {"type": "string"},
                    "minItems": 0
                }
            }
        },
        "userList": {
            "type": "object",
            "required": ["name"],
            "properties": {
                "name": {"type": "string"},
                "memberList": {"$ref": "#/definitions/listMembers"},
                "id": {"type": "integer"},
                "userListDetailsURL": {"type": "string"}
            }
        },
        "userLists": {
            "type": "object",
            "properties": {
                "userList": {
                    "type": "array",
                    "items": {"$ref": "#/definitions/userList"},
                    "minItems": 0
                }
            }
        },
        "mobileCarriers": {
            "type": "object",
            "properties": {
                "mobileCarrier": {
                    "type": "array",
                    "items": {"$ref": "#/definitions/mobileCarrier"},
                    "minItems": 0
                }
            }
        },
        "raveGroupMembership": {
            "type": "object",
            "required": ["groupId"],
            "properties": {
                "alertByPhone": {"type": "boolean"},
                "alertByEmail": {"type": "boolean"},
                "role": {"$ref": "#/definitions/groupRoleType"},
                "groupId": {"type": "integer"},
                "groupDetailsURL": {"type": "string"}
            }
        },
        "rejectedListMembers": {
            "type": "object",
            "properties": {
                "listMember": {
                    "type": "array",
                    "items": {"type": "string"},
                    "minItems": 0
                }
            }
        },
        "raveGroupMemberships": {
            "type": "object",
            "properties": {
                "raveGroupMembership": {
                    "type": "array",
                    "items": {"$ref": "#/definitions/raveGroupMembership"},
                    "minItems": 0
                }
            }
        },
        "raveGroups": {
            "type": "object",
            "properties": {
                "raveGroup": {
                    "type": "array",
                    "items": {"$ref": "#/definitions/raveGroup"},
                    "minItems": 0
                }
            }
        },
        "raveUser": {
            "type": "object",
            "required": [
                "firstName",
                "lastName",
                "email"
            ],
            "properties": {
                "firstName": {"type": "string"},
                "lastName": {"type": "string"},
                "email": {"type": "string"},
                "alternateEmail1": {"type": "string"},
                "alternateEmail2": {"type": "string"},
                "sisId": {"type": "string"},
                "gender": {"$ref": "#/definitions/genderType"},
                "ssoId": {"type": "string"},
                "languagePreference": {"$ref": "#/definitions/languageType"},
                "administrationRole": {"$ref": "#/definitions/userRoleType"},
                "role": {"type": "string"},
                "mobileNumber1": {"type": "string"},
                "mobileCarrier1": {"type": "integer"},
                "mobile1Confirmed": {"type": "boolean"},
                "useMobile1ForVoice": {"type": "boolean"},
                "mobileNumber2": {"type": "string"},
                "useMobile2ForVoice": {"type": "boolean"},
                "mobileCarrier2": {"type": "integer"},
                "useMobile3ForVoice": {"type": "boolean"},
                "mobileNumber3": {"type": "string"},
                "mobileCarrier3": {"type": "integer"},
                "voiceOnlyPhoneNumber1": {"type": "string"},
                "voiceOnlyPhoneExtension1": {"type": "string"},
                "voiceOnlyPhoneNumber2": {"type": "string"},
                "voiceOnlyPhoneExtension2": {"type": "string"},
                "voiceOnlyPhoneNumber3": {"type": "string"},
                "voiceOnlyPhoneExtension3": {"type": "string"},
                "institutionRole": {"type": "string"},
                "userAttribute1": {"type": "string"},
                "userAttribute2": {"type": "string"},
                "userAttribute3": {"type": "string"},
                "userAttribute4": {"type": "string"}
            }
        },
        "listMemberships": {
            "type": "object",
            "properties": {
                "userList": {
                    "type": "array",
                    "items": {"$ref": "#/definitions/userList"},
                    "minItems": 0
                }
            }
        },
        "groupRoleType": {
            "type": "string",
            "enum": [
                "ADMINISTRATOR",
                "CONTRIBUTOR",
                "MEMBER"
            ]
        },
        "genderType": {
            "type": "string",
            "enum": [
                "MALE",
                "FEMALE",
                "UNKNOWN"
            ]
        },
        "languageType": {
            "type": "string",
            "enum": [
                "en",
                "ar",
                "bg",
                "ca",
                "zh",
                "zh_tw",
                "hr",
                "cs",
                "da",
                "nl",
                "tl",
                "fi",
                "fr",
                "de",
                "el",
                "he",
                "hi",
                "id",
                "it",
                "ja",
                "ko",
                "lv",
                "lt",
                "no",
                "pl",
                "pt",
                "ro",
                "ru",
                "sr",
                "sk",
                "sl",
                "es",
                "sv",
                "uk",
                "vi"
            ]
        },
        "userRoleType": {
            "type": "string",
            "enum": [
                "USER",
                "BROADCAST_ADMIN",
                "SITE_ADMIN",
                "LIST_ADMIN",
                "FACULTY"
            ]
        }
    },
    "anyOf": [
        {
            "type": "object",
            "properties": {
                "ServiceError": {"$ref": "#/definitions/serviceError"}
            }
        },
        {
            "type": "object",
            "properties": {
                "mobileCarrier": {"$ref": "#/definitions/mobileCarrier"}
            }
        },
        {
            "type": "object",
            "properties": {
                "raveGroup": {"$ref": "#/definitions/raveGroup"}
            }
        },
        {
            "type": "object",
            "properties": {
                "userLists": {"$ref": "#/definitions/userLists"}
            }
        },
        {
            "type": "object",
            "properties": {
                "mobileCarriers": {"$ref": "#/definitions/mobileCarriers"}
            }
        },
        {
            "type": "object",
            "properties": {
                "raveGroupMembership": {"$ref": "#/definitions/raveGroupMembership"}
            }
        },
        {
            "type": "object",
            "properties": {
                "rejectedListMembers": {"$ref": "#/definitions/rejectedListMembers"}
            }
        },
        {
            "type": "object",
            "properties": {
                "listMembers": {"$ref": "#/definitions/listMembers"}
            }
        },
        {
            "type": "object",
            "properties": {
                "raveGroupMemberships": {"$ref": "#/definitions/raveGroupMemberships"}
            }
        },
        {
            "type": "object",
            "properties": {
                "userList": {"$ref": "#/definitions/userList"}
            }
        },
        {
            "type": "object",
            "properties": {
                "raveGroups": {"$ref": "#/definitions/raveGroups"}
            }
        },
        {
            "type": "object",
            "properties": {
                "raveUser": {"$ref": "#/definitions/raveUser"}
            }
        },
        {
            "type": "object",
            "properties": {
                "listMemberships": {"$ref": "#/definitions/listMemberships"}
            }
        }
    ]
}