For clean Markdown of any page, append .md to the page URL. For a complete documentation index, see https://api-doc-new.gideononline.com/gideon-api-1-0/diseases/llms.txt. For full documentation content, see https://api-doc-new.gideononline.com/gideon-api-1-0/diseases/llms-full.txt.

# /diseases/outbreaks/filter

GET https://api.gideononline.com/diseases/outbreaks/filter

Returns **outbreak** rows in **simple** mode by default (`return=simple`). Each row includes **`update_date`**, **`update_date_epoch`** (Unix seconds; derived from each row’s update time), geography, counts, and resolved names (vehicle, pathogen, populations, etc.). **`id`** is prefixed (`o_`, `t_`, `sp_`) from event type and a stable numeric key.

**Year overlap** uses the query parameters **`outbreak_start`** and **`outbreak_end`** (calendar years) with derived span logic on the server.

If the filtered row count exceeds **`outbreaks_max_records_without_filters`** (default **500**), the API returns **HTTP 200** with `{ "data": { "record_count", "max_records" } }` instead of listing rows.

Use **`GET /diseases/outbreaks/filter-options`** for facet values. Use **`GET /diseases/outbreaks/regions`** (requires **`countryId`**) for subdivision pickers; use **`GET /diseases/outbreaks/settings`**, **`GET /diseases/outbreaks/population`**, **`GET /diseases/outbreaks/pathogens`**, and **`GET /diseases/outbreaks/vehicles`** for the full setting, population, pathogen, and vehicle catalogs (optional prefix **`search`** where noted on each request).

#### **Query parameters** (optional; combine as needed)

| Name | Description |
| --- | --- |
| `disease` | Numeric GIDEON disease identifier. |
| `country` | GIDEON country code for the reporting country. |
| `originCountry` | Country code for the country of origin (imported exposure), when applicable. |
| `type` | Substring match on stored event `type` (e.g. outbreak, sporadic, travelcase). |
| `outbreak_start` / `outbreak_end` | Calendar-year overlap window. |
| `region` | Subdivision id (`region_code` from **`GET /diseases/outbreaks/regions`** with the same country as **`countryId`**, or filter-options **`region_id`**). |
| `setting` | Setting id (`setting_code` from **`GET /diseases/outbreaks/settings`** or filter-options). |
| `population` | Human population id (`population_code` from **`GET /diseases/outbreaks/population`** with `is_human=1`, or filter-options `data.populations`). |
| `animalPopulation` | Animal population id (`population_code` from **`GET /diseases/outbreaks/population`** with `is_human=0`, or filter-options `data.animal_populations` as `animal_population_code`). |
| `vehicle` | Vehicle id (`vehicle_code` from **`GET /diseases/outbreaks/vehicles`** or filter-options). |
| `pathogen` | Pathogen id (`pathogen_code` from **`GET /diseases/outbreaks/pathogens`** or filter-options). |
| `humanCases` / `humanDeaths` / `animalCases` / `animalDeaths` | Numeric filters (same operator rules as similar endpoints). |
| `return` | `simple` (default) or `detailed` (paginated, extra fields). |

#### **Success with rows (simple)**

`{ "data": [ ... ] }` — the Postman example shows **one** row for brevity (from api-dev; values change).

Reference: https://api-doc-new.gideononline.com/gideon-api-1-0/diseases/diseases-outbreaks-filter

## OpenAPI Specification

```yaml
openapi: 3.1.0
info:
  title: collection
  version: 1.0.0
paths:
  /diseases/outbreaks/filter:
    get:
      operationId: diseases-outbreaks-filter
      summary: /diseases/outbreaks/filter
      description: >-
        Returns **outbreak** rows in **simple** mode by default
        (`return=simple`). Each row includes **`update_date`**,
        **`update_date_epoch`** (Unix seconds; derived from each row’s update
        time), geography, counts, and resolved names (vehicle, pathogen,
        populations, etc.). **`id`** is prefixed (`o_`, `t_`, `sp_`) from event
        type and a stable numeric key.


        **Year overlap** uses the query parameters **`outbreak_start`** and
        **`outbreak_end`** (calendar years) with derived span logic on the
        server.


        If the filtered row count exceeds
        **`outbreaks_max_records_without_filters`** (default **500**), the API
        returns **HTTP 200** with `{ "data": { "record_count", "max_records" }
        }` instead of listing rows.


        Use **`GET /diseases/outbreaks/filter-options`** for facet values. Use
        **`GET /diseases/outbreaks/regions`** (requires **`countryId`**) for
        subdivision pickers; use **`GET /diseases/outbreaks/settings`**, **`GET
        /diseases/outbreaks/population`**, **`GET
        /diseases/outbreaks/pathogens`**, and **`GET
        /diseases/outbreaks/vehicles`** for the full setting, population,
        pathogen, and vehicle catalogs (optional prefix **`search`** where noted
        on each request).


        #### **Query parameters** (optional; combine as needed)


        | Name | Description |

        | --- | --- |

        | `disease` | Numeric GIDEON disease identifier. |

        | `country` | GIDEON country code for the reporting country. |

        | `originCountry` | Country code for the country of origin (imported
        exposure), when applicable. |

        | `type` | Substring match on stored event `type` (e.g. outbreak,
        sporadic, travelcase). |

        | `outbreak_start` / `outbreak_end` | Calendar-year overlap window. |

        | `region` | Subdivision id (`region_code` from **`GET
        /diseases/outbreaks/regions`** with the same country as **`countryId`**,
        or filter-options **`region_id`**). |

        | `setting` | Setting id (`setting_code` from **`GET
        /diseases/outbreaks/settings`** or filter-options). |

        | `population` | Human population id (`population_code` from **`GET
        /diseases/outbreaks/population`** with `is_human=1`, or filter-options
        `data.populations`). |

        | `animalPopulation` | Animal population id (`population_code` from
        **`GET /diseases/outbreaks/population`** with `is_human=0`, or
        filter-options `data.animal_populations` as `animal_population_code`). |

        | `vehicle` | Vehicle id (`vehicle_code` from **`GET
        /diseases/outbreaks/vehicles`** or filter-options). |

        | `pathogen` | Pathogen id (`pathogen_code` from **`GET
        /diseases/outbreaks/pathogens`** or filter-options). |

        | `humanCases` / `humanDeaths` / `animalCases` / `animalDeaths` |
        Numeric filters (same operator rules as similar endpoints). |

        | `return` | `simple` (default) or `detailed` (paginated, extra fields).
        |


        #### **Success with rows (simple)**


        `{ "data": [ ... ] }` — the Postman example shows **one** row for
        brevity (from api-dev; values change).
      tags:
        - subpackage_diseases
      parameters:
        - name: disease
          in: query
          description: Numeric GIDEON disease identifier.
          required: false
          schema:
            type: integer
        - name: country
          in: query
          description: GIDEON country code for the reporting country.
          required: false
          schema:
            type: string
        - name: Authorization
          in: header
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/Diseases_/diseases/outbreaks/filter_Response_200
servers:
  - url: https://api.gideononline.com
  - url: https://api-test.gideononline.com
components:
  schemas:
    DiseasesOutbreaksFilterGetResponsesContentApplicationJsonSchemaDataItems:
      type: object
      properties:
        id:
          type: string
        city:
          type: string
        type:
          type: string
        cases:
          type: integer
        state:
          type: string
        deaths:
          description: Any type
        region:
          type: string
        country:
          type: string
        disease:
          type: string
        hash_id:
          type: string
          format: uuid
        latitude:
          type: string
        longitude:
          type: string
        setting_id:
          description: Any type
        vehicle_id:
          type: integer
        pathogen_id:
          description: Any type
        update_date:
          type: string
        animal_cases:
          description: Any type
        country_code:
          type: string
        disease_code:
          type: integer
        outbreak_end:
          description: Any type
        setting_name:
          type: string
        vehicle_name:
          type: string
        animal_deaths:
          description: Any type
        pathogen_name:
          description: Any type
        population_id:
          description: Any type
        origin_country:
          description: Any type
        outbreak_start:
          type: integer
        population_name:
          description: Any type
        publication_year:
          description: Any type
        update_date_epoch:
          type: integer
        origin_country_code:
          type: string
        animal_population_id:
          description: Any type
        animal_population_name:
          description: Any type
        outbreak_last_reported:
          type: integer
        outbreak_first_reported:
          type: integer
      required:
        - id
        - city
        - type
        - cases
        - state
        - region
        - country
        - disease
        - hash_id
        - latitude
        - longitude
        - vehicle_id
        - update_date
        - country_code
        - disease_code
        - setting_name
        - vehicle_name
        - outbreak_start
        - update_date_epoch
        - origin_country_code
        - outbreak_last_reported
        - outbreak_first_reported
      title: DiseasesOutbreaksFilterGetResponsesContentApplicationJsonSchemaDataItems
    Diseases_/diseases/outbreaks/filter_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: >-
              #/components/schemas/DiseasesOutbreaksFilterGetResponsesContentApplicationJsonSchemaDataItems
      required:
        - data
      title: Diseases_/diseases/outbreaks/filter_Response_200
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: Authorization

```

## SDK Code Examples

```python Diseases_/diseases/outbreaks/filter_example
import requests

url = "https://api.gideononline.com/diseases/outbreaks/filter"

querystring = {"disease":"10040","country":"G292"}

headers = {"Authorization": "<apiKey>"}

response = requests.get(url, headers=headers, params=querystring)

print(response.json())
```

```javascript Diseases_/diseases/outbreaks/filter_example
const url = 'https://api.gideononline.com/diseases/outbreaks/filter?disease=10040&country=G292';
const options = {method: 'GET', headers: {Authorization: '<apiKey>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go Diseases_/diseases/outbreaks/filter_example
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.gideononline.com/diseases/outbreaks/filter?disease=10040&country=G292"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "<apiKey>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby Diseases_/diseases/outbreaks/filter_example
require 'uri'
require 'net/http'

url = URI("https://api.gideononline.com/diseases/outbreaks/filter?disease=10040&country=G292")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = '<apiKey>'

response = http.request(request)
puts response.read_body
```

```java Diseases_/diseases/outbreaks/filter_example
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.gideononline.com/diseases/outbreaks/filter?disease=10040&country=G292")
  .header("Authorization", "<apiKey>")
  .asString();
```

```php Diseases_/diseases/outbreaks/filter_example
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.gideononline.com/diseases/outbreaks/filter?disease=10040&country=G292', [
  'headers' => [
    'Authorization' => '<apiKey>',
  ],
]);

echo $response->getBody();
```

```csharp Diseases_/diseases/outbreaks/filter_example
using RestSharp;

var client = new RestClient("https://api.gideononline.com/diseases/outbreaks/filter?disease=10040&country=G292");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "<apiKey>");
IRestResponse response = client.Execute(request);
```

```swift Diseases_/diseases/outbreaks/filter_example
import Foundation

let headers = ["Authorization": "<apiKey>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.gideononline.com/diseases/outbreaks/filter?disease=10040&country=G292")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```