{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "type": "object",
    "properties": {
        "apikey": {
            "description": "Autogenerated API key for basic auth",
            "type": "string"
        },
        "secret_hash": {
            "description": "hashed version of api secret",
            "type": "string"
        },
        "domain": {
            "description": "Allowed domain for CORS calls",
            "type": "string"
        },
        "acl": {
            "description": "Access control list",
            "type": "object",
            "patternProperties": {
                "[allow|disallow]": {
                    "type": "array",
                    "pattern": "/(\\*|GET|POST|PUT|PATCH|DELETE)(\\:/.*)?/g"
                }
            },
            "required": [
                "allow",
                "disallow"
            ]
        },
        "sessions": {
            "description": "Active sessions belongs to client",
            "type": "object",
            "patternProperties": {
                "/.*/": {
                    "type": "array",
                    "minItems": 2,
                    "maxItems": 2
                }
            }
        }
    },
    "required": [
        "apikey",
        "secret_hash",
        "domain",
        "acl"
    ]
}