> ## Documentation Index
> Fetch the complete documentation index at: https://docs.northaxiumdata.ca/llms.txt
> Use this file to discover all available pages before exploring further.

# Research Grants

> NSERC and SSHRC academic research awards spanning 1991 to present.

## Overview

Returns 921K+ research grant records from the Natural Sciences and Engineering Research Council (NSERC) and Social Sciences and Humanities Research Council (SSHRC). NSERC covers 1991–present; SSHRC covers 1998–present.

## Query Parameters

<ParamField query="q" type="string">
  Full-text search across researcher name, institution, program name, and keywords. Example: `Palantir`.
</ParamField>

<ParamField query="source" type="string">
  Filter by council. Options: `NSERC`, `SSHRC`. Example: `open.canada`.
</ParamField>

<ParamField query="researcher_name" type="string">
  Partial match on researcher name. Example: `Jane Smith`.
</ParamField>

<ParamField query="institution" type="string">
  Partial match on institution name. Example: `Finance Canada`.
</ParamField>

<ParamField query="program" type="string">
  Partial match on program name. Example: `Canada Summer Jobs`.
</ParamField>

<ParamField query="province" type="string">
  Two-letter province code — e.g. `ON`, `BC`, `QC`. Example: `ON`.
</ParamField>

<ParamField query="fiscal_year" type="string">
  Fiscal year — e.g. `2022-23`. Example: `2023-2024`.
</ParamField>

<ParamField query="min_value" type="number">
  Minimum award amount in CAD. Example: `100000`.
</ParamField>

<ParamField query="max_value" type="number">
  Maximum award amount in CAD. Example: `5000000`.
</ParamField>

<ParamField query="sort_by" type="string">
  `value` or `date`. Default: `date`. Example: `date`.
</ParamField>

<ParamField query="sort_order" type="string">
  `asc` or `desc`. Default: `desc`. Example: `desc`.
</ParamField>

<ParamField query="limit" type="integer">
  Results per page. Default: `100`. Max: `200`. Example: `25`.
</ParamField>

<ParamField query="offset" type="integer">
  Result offset. Default: `0`. Example: `50`.
</ParamField>

<RequestExample>
  ```bash cURL theme={null}
  curl -H "X-API-Key: your_api_key_here" \
    "https://api.northaxiumdata.ca/api/v1/research_grants?institution=University%20of%20Toronto&source=NSERC&limit=10"
  ```

  ```python Python theme={null}
  import requests

  headers = {"X-API-Key": "your_api_key_here"}
  params = {
      "institution": "University of Toronto",
      "source": "NSERC",
      "limit": 10
  }

  response = requests.get(
      "https://api.northaxiumdata.ca/api/v1/research_grants",
      headers=headers,
      params=params
  )
  for grant in response.json()["data"]:
      print(f"{grant['researcher_name']} — {grant['program_en']}: ${grant['award_amount']:,.0f}")
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "data": [
      {
        "record_id": "nserc_abc123",
        "researcher_name": "Dr. Jane Smith",
        "institution": "University of Toronto",
        "province": "ON",
        "award_amount": 185000.00,
        "fiscal_year": "2022-23",
        "program_en": "Discovery Grants Program",
        "source": "NSERC",
        "keywords": "machine learning, climate modelling"
      }
    ],
    "meta": {
      "total": 921586,
      "limit": 10,
      "offset": 0
    }
  }
  ```

  ```json 400 theme={null}
  {
    "error": {
      "code": "BAD_REQUEST",
      "message": "source must be NSERC or SSHRC."
    }
  }
  ```

  ```json 401 theme={null}
  {
    "error": {
      "code": "UNAUTHORIZED",
      "message": "Missing API key. Pass your key in the X-API-Key header."
    }
  }
  ```

  ```json 429 theme={null}
  {
    "error": {
      "code": "RATE_LIMITED",
      "message": "Monthly request limit exceeded. Upgrade your plan for higher limits."
    }
  }
  ```
</ResponseExample>
