json_schema: {
      "additionalProperties": false,
      "description": "Schema for a client-generated user session",
      "properties": {
          "previousSessionId": {
              "_format": "uuid",
              "type": [
                  "null",
                  "string"
              ]
          },
          "sessionId": {
              "_format": "uuid",
              "type": "string"
          },
          "sessionIndex": {
              "maximum": 2147483647,
              "minimum": 0,
              "type": "integer"
          },
          "storageMechanism": {
              "enum": [
                  "SQLITE",
                  "COOKIE_1",
                  "COOKIE_3",
                  "LOCAL_STORAGE",
                  "FLASH_LSO"
              ]
          },
          "userId": {
              "pattern": "^[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}$|^[0-9a-f]{16}$",
              "type": "string"
          }
      },
      "required": [
          "userId",
          "sessionId",
          "sessionIndex",
          "previousSessionId",
          "storageMechanism"
      ],
      "self": {
          "format": "jsonschema",
          "name": "client_session",
          "vendor": "com.snowplowanalytics.snowplow",
          "version": "1-0-0"
      },
      "type": "object"
  }