{
  "type": "array",
  "items": {
    "type": "object",
    "properties" : {
      "id": { "type": "integer" },
      "iid": { "type": "integer" },
      "project_id": { "type": "integer" },
      "title": { "type": "string" },
      "description": { "type": ["string", "null"] },
      "state": { "type": "string" },
      "created_at": { "type": "date" },
      "updated_at": { "type": "date" },
      "target_branch": { "type": "string" },
      "source_branch": { "type": "string" },
      "upvotes": { "type": "integer" },
      "downvotes": { "type": "integer" },
      "author": {
        "type": "object",
        "properties": {
          "name": { "type": "string" },
          "username": { "type": "string" },
          "id": { "type": "integer" },
          "state": { "type": "string" },
          "avatar_url": { "type": "uri" },
          "web_url": { "type": "uri" }
        },
        "additionalProperties": false
      },
      "assignee": {
        "type": "object",
        "properties": {
          "name": { "type": "string" },
          "username": { "type": "string" },
          "id": { "type": "integer" },
          "state": { "type": "string" },
          "avatar_url": { "type": "uri" },
          "web_url": { "type": "uri" }
        },
        "additionalProperties": false
      },
      "source_project_id": { "type": "integer" },
      "target_project_id": { "type": "integer" },
      "labels": {
        "type": "array",
        "items": {
          "type": "string"
        }
      },
      "work_in_progress": { "type": "boolean" },
      "milestone": {
        "type": ["object", "null"],
        "properties": {
          "id": { "type": "integer" },
          "iid": { "type": "integer" },
          "project_id": { "type": "integer" },
          "title": { "type": "string" },
          "description": { "type": ["string", "null"] },
          "state": { "type": "string" },
          "created_at": { "type": "date" },
          "updated_at": { "type": "date" },
          "due_date": { "type": "date" },
          "start_date": { "type": "date" }
        },
        "additionalProperties": false
      },
      "merge_when_build_succeeds": { "type": "boolean" },
      "merge_status": { "type": "string" },
      "sha": { "type": "string" },
      "merge_commit_sha": { "type": ["string", "null"] },
      "user_notes_count": { "type": "integer" },
      "should_remove_source_branch": { "type": ["boolean", "null"] },
      "force_remove_source_branch": { "type": ["boolean", "null"] },
      "web_url": { "type": "uri" },
      "subscribed": { "type": ["boolean"] }
    },
    "required": [
      "id", "iid", "project_id", "title", "description",
      "state", "created_at", "updated_at", "target_branch",
      "source_branch", "upvotes", "downvotes", "author",
      "assignee", "source_project_id", "target_project_id",
      "labels", "work_in_progress", "milestone", "merge_when_build_succeeds",
      "merge_status", "sha", "merge_commit_sha", "user_notes_count",
      "should_remove_source_branch", "force_remove_source_branch",
      "web_url", "subscribed"
    ],
    "additionalProperties": false
  }
}
