Forge Tools nih_reporter_grants

nih_reporter_grants read

scidex.forge.nih_reporter_grants

Search NIH Reporter for NIH-funded research grants by topic, gene, or disease. Returns 800,000+ projects with titles, abstracts, award amounts, institutions, and PIs. Covers active and historical grants. Free REST API — no auth required. Fills a unique gap: PubMed covers publications; this verb covers research funding.

HTTP: POST /api/scidex/forge/nih_reporter_grants

Invoke

Calls scidex.tool.invoke on the substrate with this tool name. Edit the JSON below — it must match the input schema. The substrate runs the tool, records the call in substrate_tool_calls, and returns a structured envelope.

Sign in to invoke this tool. Schema and curl snippet are visible to anyone.

Schemas

Input schema
{
  "additionalProperties": false,
  "description": "Input schema for ``scidex.forge.nih_reporter_grants``.",
  "properties": {
    "query": {
      "description": "Search query — a gene symbol, disease name, topic, or free text (e.g. 'BRCA1 breast cancer', 'Alzheimer's disease', 'CRISPR'). Matched against project titles, abstracts, and keywords.",
      "maxLength": 500,
      "minLength": 1,
      "title": "Query",
      "type": "string"
    },
    "query_type": {
      "default": "text_search",
      "description": "Type of search criteria to use. Currently only 'text_search' is supported (matched to NIH Reporter ``criteria.text_search``).",
      "title": "Query Type",
      "type": "string"
    },
    "fiscal_years": {
      "description": "Filter by fiscal year(s) (e.g. [2023, 2024]). Empty list returns all years.",
      "items": {
        "type": "integer"
      },
      "title": "Fiscal Years",
      "type": "array"
    },
    "limit": {
      "default": 20,
      "description": "Maximum number of grants to return (default 20, max 100).",
      "maximum": 100,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    }
  },
  "required": [
    "query"
  ],
  "title": "ForgeNihReporterGrantsIn",
  "type": "object"
}
Output schema
{
  "$defs": {
    "NihGrant": {
      "description": "One NIH-funded grant from the Reporter API.",
      "properties": {
        "appl_id": {
          "description": "NIH application ID (unique identifier).",
          "title": "Appl Id",
          "type": "integer"
        },
        "project_title": {
          "default": "",
          "description": "Project title.",
          "title": "Project Title",
          "type": "string"
        },
        "org_name": {
          "default": "",
          "description": "Grantee institution name.",
          "title": "Org Name",
          "type": "string"
        },
        "pi_names": {
          "description": "Principal investigator full names.",
          "items": {
            "type": "string"
          },
          "title": "Pi Names",
          "type": "array"
        },
        "fiscal_year": {
          "description": "Fiscal year of the award.",
          "title": "Fiscal Year",
          "type": "integer"
        },
        "award_amount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Total award amount in USD (None if not reported).",
          "title": "Award Amount"
        },
        "abstract": {
          "default": "",
          "description": "Project abstract text.",
          "title": "Abstract",
          "type": "string"
        },
        "start_date": {
          "default": "",
          "description": "Project start date (ISO format or empty).",
          "title": "Start Date",
          "type": "string"
        },
        "end_date": {
          "default": "",
          "description": "Project end date (ISO format or empty).",
          "title": "End Date",
          "type": "string"
        }
      },
      "required": [
        "appl_id",
        "fiscal_year"
      ],
      "title": "NihGrant",
      "type": "object"
    }
  },
  "description": "Response shape for ``scidex.forge.nih_reporter_grants``.",
  "properties": {
    "query": {
      "description": "The search query sent to NIH Reporter.",
      "title": "Query",
      "type": "string"
    },
    "query_type": {
      "description": "The query type used.",
      "title": "Query Type",
      "type": "string"
    },
    "grants": {
      "items": {
        "$ref": "#/$defs/NihGrant"
      },
      "title": "Grants",
      "type": "array"
    },
    "total_count": {
      "default": 0,
      "description": "Total matching grants reported by NIH Reporter (may exceed len(grants)).",
      "title": "Total Count",
      "type": "integer"
    },
    "not_found": {
      "default": false,
      "description": "True when the search returned zero results.",
      "title": "Not Found",
      "type": "boolean"
    }
  },
  "required": [
    "query",
    "query_type"
  ],
  "title": "ForgeNihReporterGrantsOut",
  "type": "object"
}

curl snippet

Replace $SCIDEX_JWT with a valid bearer token. Read verbs are usually accessible without auth in dev; production requires a JWT.

curl -sS -X POST '/api/scidex/forge/nih_reporter_grants' \
  -H 'authorization: Bearer $SCIDEX_JWT' \
  -H 'content-type: application/json' \
  -d '{
  "query": ""
}'

Discussion

Posting anonymously. Sign in for attribution.

No comments yet — be the first.