{
    "title": "VigoTech Alliance members JSON schema",
    "type": "object",
    "description": "",
    "$schema": "http://json-schema.org/draft-04/schema#",
    "additionalProperties": false,
    "required": [
        "name",
        "logo"
    ],
    "properties": {
        "name": {
            "type": "string",
            "description": "Alliance name"
        },
        "logo": {
            "type": "string",
            "description": "Logo url"
        },
        "sticker": {
            "type": "string",
            "description": "Sticker image url"
        },
        "links": {
            "type": "object",
            "description": "Alliance site and social links",
            "items": {
                "type": "object",
                "description": "Link",
                "required": [
                    "key",
                    "url"
                ],
                "properties": {
                    "key": {
                        "type": "string",
                        "description": "Link key (used to show icon)"
                    },
                    "url": {
                        "type": "string",
                        "description": "Link url"
                    }
                }
            }
        },
        "events": {
            "type": [
                "object",
                "array"
            ],
            "description": "Events data source",
            "items": {
                "type": "object",
                "description": "Event data source",
                "required": [
                    "type"
                ],
                "properties": {
                    "type": {
                        "type": "string",
                        "description": "Data source type allowed values (meetup, eventbrite, json)"
                    },
                    "meetupid": {
                        "type": "string",
                        "description": "Meetup id"
                    },
                    "eventbriteid": {
                        "type": "string",
                        "description": "Eventbrite id"
                    },
                    "source": {
                        "type": "string",
                        "description": "Source URL"
                    }
                }
            }
        },
        "members": {
            "type": [
                "array",
                "object"
            ],
            "description": "Alliance members",
            "items": {
                "type": "object",
                "description": "Member",
                "required": [
                    "key",
                    "name",
                    "logo"
                ],
                "properties": {
                    "key": {
                        "type": "string",
                        "description": "Member unique id"
                    },
                    "name": {
                        "type": "string",
                        "description": "Alliance name"
                    },
                    "logo": {
                        "type": "string",
                        "description": "Logo url"
                    },
                    "sticker": {
                        "type": "string",
                        "description": "Sticker image url"
                    },
                    "links": {
                        "type": "object",
                        "description": "Alliance site and social links",
                        "items": {
                            "type": "object",
                            "description": "Link",
                            "required": [
                                "key",
                                "url"
                            ],
                            "properties": {
                                "key": {
                                    "type": "string",
                                    "description": "Link key (used to show icon)"
                                },
                                "url": {
                                    "type": "string",
                                    "description": "Link url"
                                }
                            }
                        }
                    },
                    "events": {
                        "type": [
                            "object",
                            "array"
                        ],
                        "description": "Events data source",
                        "items": {
                            "type": "object",
                            "description": "Event data source",
                            "required": [
                                "type"
                            ],
                            "properties": {
                                "type": {
                                    "type": "string",
                                    "description": "Data source type allowed values (meetup, eventbrite, json)"
                                },
                                "meetupid": {
                                    "type": "string",
                                    "description": "Meetup id"
                                },
                                "eventbriteid": {
                                    "type": "string",
                                    "description": "Eventbrite id"
                                },
                                "source": {
                                    "type": "string",
                                    "description": "Source URL"
                                }
                            }
                        }
                    },
                    "videos": {
                        "type": "array",
                        "description": "Member videos source",
                        "items": {
                            "type": "object",
                            "description": "Member video source",
                            "required": [
                                "type"
                            ],
                            "properties": {
                                "type": {
                                    "type": "string",
                                    "description": "Video source tyoe"
                                },
                                "source": {
                                    "type": "string",
                                    "description": "Telteck videos feed"
                                },
                                "channel_id": {
                                    "type": "string",
                                    "description": "Youtube channel id (not channel name)"
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}