{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "array",
  "items": {
    "oneOf": [
      {
        "type": "object",
        "properties": {
          "provider": {
            "type": "string",
            "enum": ["x", "discord"]
          },
          "revision": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "status": {
            "type": "string",
            "const": "connected"
          },
          "subject": {
            "type": "string",
            "minLength": 1
          },
          "linkedAt": {
            "type": "number"
          },
          "imported": {
            "type": "boolean"
          },
          "vouchedBy": {
            "type": "object",
            "properties": {
              "integration": {
                "type": "string"
              },
              "integrationName": {
                "type": "string"
              }
            },
            "required": ["integration", "integrationName"]
          },
          "testLinked": {
            "type": "boolean"
          },
          "source": {
            "type": "string"
          },
          "import": {
            "type": "string"
          }
        },
        "required": ["provider", "revision", "status", "subject", "linkedAt"],
        "additionalProperties": false
      },
      {
        "type": "object",
        "properties": {
          "provider": {
            "type": "string",
            "enum": ["x", "discord"]
          },
          "revision": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "status": {
            "type": "string",
            "const": "disconnected"
          }
        },
        "required": ["provider", "revision", "status"],
        "additionalProperties": false
      }
    ]
  }
}
