**Apache Airflow version**: v2.0.0.dev0 (latest master)

**What happened**:

Running Breeze on my local machine with sample DAGs.

**Request made with Insomnia desktop client** (same result using a web application client):

> GET /api/v1/dags?limit=100 HTTP/1.1
> Host: 127.0.0.1:28080
> Authorization: Basic YWRtaW46YWRtaW4=
> User-Agent: insomnia/2020.4.1
> Cookie: session=.eJw1zjkKwzAQQNG7qE6hGS1j-TJmNpEUMUG2q5C7RxDSffjNe4etDz_uYT3H5bewPSysoSJEVWo9UW4sGNFN-iwVMozdXdViEa1VGjp2BUCuzA1JFmNyoCypYMXezBM4gs1ZkJVAeok1ZaSoZiQ1c5RlUbGUihdWljAhLx9P3n0__7Tr8PHjQfh8Ac-rNx4.X4WlQA.kuA0c8M57RIBSTP0iyebJAYkY8M
> Accept: */*

**500 error response:**

```json
{
  "detail": "None is not valid under any of the given schemas\n\nFailed validating 'oneOf' in schema['allOf'][0]['properties']['dags']['items']['properties']['schedule_interval']:\n    {'description': 'Schedule interval. Defines how often DAG runs, this '\n                    \"object gets added to your latest task instance's\\n\"\n                    'execution_date to figure out the next schedule.\\n',\n     'discriminator': {'propertyName': '__type'},\n     'oneOf': [{'description': 'Time delta',\n                'properties': {'__type': {'type': 'string'},\n                               'days': {'type': 'integer'},\n                               'microseconds': {'type': 'integer'},\n                               'seconds': {'type': 'integer'}},\n                'required': ['__type', 'days', 'seconds', 'microseconds'],\n                'type': 'object',\n                'x-scope': ['',\n                            '#/components/schemas/DAGCollection',\n                            '#/components/schemas/DAG',\n                            '#/components/schemas/ScheduleInterval']},\n               {'description': 'Relative delta',\n                'properties': {'__type': {'type': 'string'},\n                               'day': {'type': 'integer'},\n                               'days': {'type': 'integer'},\n                               'hour': {'type': 'integer'},\n                               'hours': {'type': 'integer'},\n                               'leapdays': {'type': 'integer'},\n                               'microsecond': {'type': 'integer'},\n                               'microseconds': {'type': 'integer'},\n                               'minute': {'type': 'integer'},\n                               'minutes': {'type': 'integer'},\n                               'month': {'type': 'integer'},\n                               'months': {'type': 'integer'},\n                               'second': {'type': 'integer'},\n                               'seconds': {'type': 'integer'},\n                               'year': {'type': 'integer'},\n                               'years': {'type': 'integer'}},\n                'required': ['__type',\n                             'years',\n                             'months',\n                             'days',\n                             'leapdays',\n                             'hours',\n                             'minutes',\n                             'seconds',\n                             'microseconds',\n                             'year',\n                             'month',\n                             'day',\n                             'hour',\n                             'minute',\n                             'second',\n                             'microsecond'],\n                'type': 'object',\n                'x-scope': ['',\n                            '#/components/schemas/DAGCollection',\n                            '#/components/schemas/DAG',\n                            '#/components/schemas/ScheduleInterval']},\n               {'description': 'Cron expression',\n                'properties': {'__type': {'type': 'string'},\n                               'value': {'type': 'string'}},\n                'required': ['__type', 'value'],\n                'type': 'object',\n                'x-scope': ['',\n                            '#/components/schemas/DAGCollection',\n                            '#/components/schemas/DAG',\n                            '#/components/schemas/ScheduleInterval']}],\n     'readOnly': True,\n     'x-scope': ['',\n                 '#/components/schemas/DAGCollection',\n                 '#/components/schemas/DAG']}\n\nOn instance['dags'][3]['schedule_interval']:\n    None",
  "status": 500,
  "title": "Response body does not conform to specification",
  "type": "https://airflow.readthedocs.io/en/latest/stable-rest-api-ref.html#section/Errors/Unknown"
}
```

**What you expected to happen**:

I expected to not receive error response and instead receive an array of DAG objects.

E.G.

```json
{
  "dags": [
    {
      "dag_id": "example_bash_operator",
      "description": null,
      "fileloc": "/opt/airflow/airflow/example_dags/example_bash_operator.py",
      "is_paused": false,
      "is_subdag": false,
      "owners": [
        "airflow"
      ],
      "root_dag_id": null,
      "schedule_interval": {
        "__type": "CronExpression",
        "value": "0 0 * * *"
      },
      "tags": [
        {
          "name": "example"
        }
      ]
    },
    {
      "dag_id": "example_branch_dop_operator_v3",
      "description": null,
      "fileloc": "/opt/airflow/airflow/example_dags/example_branch_python_dop_operator_3.py",
      "is_paused": true,
      "is_subdag": false,
      "owners": [
        "airflow"
      ],
      "root_dag_id": null,
      "schedule_interval": {
        "__type": "CronExpression",
        "value": "*/1 * * * *"
      },
      "tags": [
        {
          "name": "example"
        }
      ]
    }
  ],
  "total_entries": 26
}
```

**Anything else we need to know**:

Deleting the sample DAGs with a schedule of "None" or reducing the query limit to a smaller value (that omits any DAGs w/ "None" schedule) prevents the error response from occurring.

tests/api_connexion/endpoints/test_dag_endpoint.py
self._create_dag_models(1)
        response = self.client.patch(
            "/api/v1/dags/TEST_DAG_1",
            json={
                "is_paused": False,
            },
            environ_overrides={'REMOTE_USER': "test_granular_permissions"},
        )
        assert response.status_code == 200
    def test_should_response_400_on_invalid_request(self):