{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$defs": {
    "Path": {
      "items": {
        "type": "string"
      },
      "type": "array",
      "description": "Path is a location in the world: labels from a root organizer down, relative to the world."
    },
    "Space": {
      "properties": {
        "root_id": {
          "type": "string"
        },
        "space_id": {
          "type": "string"
        },
        "path": {
          "$ref": "#/$defs/Path"
        }
      },
      "type": "object",
      "required": [
        "root_id",
        "space_id",
        "path"
      ],
      "description": "Space is a space's identity together with its Dawn path: the labels below the world, so a grant by path applies to it."
    }
  },
  "properties": {
    "subscription": {
      "type": "string"
    },
    "scope": {
      "$ref": "#/$defs/Space"
    },
    "expires_at": {
      "type": "string",
      "description": "ExpiresAt is when the service stops delivering: the earlier of the\ngrant's validity end and the configured maximum. Renewal is a fresh\nsubscribe with a fresh proof, because events carry no proof of their own."
    }
  },
  "type": "object",
  "required": [
    "subscription",
    "scope",
    "expires_at"
  ],
  "title": "SubscribeResult",
  "description": "SubscribeResult reports the open subscription."
}
