{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "format",
    "publishing_app",
    "update_type",
    "redirects"
  ],
  "properties": {
    "base_path": {
      "$ref": "#/definitions/absolute_path"
    },
    "format": {
      "enum": [ "redirect" ]
    },
    "publishing_app": {
      "type": "string"
    },
    "update_type": {
      "enum": [ "major", "minor", "republish" ]
    },
    "redirects": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "path",
          "type",
          "destination"
        ],
        "properties": {
          "path": {
            "type": "string"
          },
          "type": {
            "enum": [ "prefix", "exact" ]
          },
          "destination": {
            "type": "string"
          }
        }
      }
    }
  }
}

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "format",
    "publishing_app",
    "update_type",
    "redirects"
  ],
  "properties": {
    "base_path": {
      "$ref": "#/definitions/absolute_path"
    },
    "format": {
      "enum": [ "redirect" ]
    },
    "publishing_app": {
      "type": "string"
    },
    "update_type": {
      "enum": [ "major", "minor", "republish" ]
    },
    "redirects": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "path",
          "type",
          "destination"
        ],
        "properties": {
          "path": {
            "type": "string"
          },
          "type": {
            "enum": [ "prefix", "exact" ]
          },
          "destination": {
            "type": "string"
          }
        }
      }
    }
  },
  "definitions": {
    "absolute_path": {
      "type": "string",
      "pattern": "^/(([a-zA-Z0-9._~!$&'()*+,;=:@-]|%[0-9a-fA-F]{2})+(/([a-zA-Z0-9._~!$&'()*+,;=:@-]|%[0-9a-fA-F]{2})*)*)?$"
    }
  }
}

Add absolute_path definition to redirect
Add absolute_path definition to redirect
