{
  "openapi": "3.0.1",
  "info": {
    "title": "Grants.gov Scraper: Grant Opportunities + NIH & UKRI Awards",
    "description": "Find open grant and funding opportunities on Grants.gov (forecasted and posted) with deadlines, award ceiling, total funding and eligibility, plus awarded research grants from NIH RePORTER and UKRI Gateway to Research. One schema, only new records since the last run.",
    "version": "0.1",
    "x-build-id": "F3aRJ186FCcxs4RZx"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/latamdatatools~grants-funding-opportunities/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-latamdatatools-grants-funding-opportunities",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/latamdatatools~grants-funding-opportunities/runs": {
      "post": {
        "operationId": "runs-sync-latamdatatools-grants-funding-opportunities",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/latamdatatools~grants-funding-opportunities/run-sync": {
      "post": {
        "operationId": "run-sync-latamdatatools-grants-funding-opportunities",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Words searched in titles and descriptions, e.g. \"artificial intelligence\", \"rural broadband\", \"malaria\". Each keyword is a separate search. Required for UKRI.",
            "items": {
              "type": "string"
            }
          },
          "sources": {
            "title": "Sources",
            "type": "array",
            "description": "Grants.gov = open US federal funding opportunities. NIH RePORTER = awarded NIH research grants (who got funded). UKRI Gateway to Research = awarded UK research and innovation grants.",
            "items": {
              "type": "string",
              "enum": [
                "grants_gov",
                "nih_reporter",
                "ukri_gtr"
              ],
              "enumTitles": [
                "Grants.gov (open opportunities)",
                "NIH RePORTER (awarded grants)",
                "UKRI Gateway to Research (awarded grants)"
              ]
            },
            "default": [
              "grants_gov"
            ]
          },
          "opportunityStatuses": {
            "title": "Grants.gov: status",
            "type": "array",
            "description": "Forecasted = announced but not open yet; posted = open for applications.",
            "items": {
              "type": "string",
              "enum": [
                "forecasted",
                "posted",
                "closed",
                "archived"
              ],
              "enumTitles": [
                "Forecasted",
                "Posted (open)",
                "Closed",
                "Archived"
              ]
            },
            "default": [
              "forecasted",
              "posted"
            ]
          },
          "grantsAgencies": {
            "title": "Grants.gov: agency codes",
            "type": "array",
            "description": "Optional. Grants.gov agency codes, e.g. NSF, DOE, USDA, HHS-NIH11, DOC-EDA, ED. Several = any of them.",
            "items": {
              "type": "string"
            }
          },
          "eligibilities": {
            "title": "Grants.gov: eligibility codes",
            "type": "array",
            "description": "Optional. 00 State governments, 01 County, 02 City, 06 Public/state higher education, 12 Nonprofits with 501(c)(3), 20 Private higher education, 22 For-profit organizations, 23 Small businesses, 25 Others, 99 Unrestricted.",
            "items": {
              "type": "string"
            }
          },
          "fundingCategories": {
            "title": "Grants.gov: category codes",
            "type": "array",
            "description": "Optional. e.g. ST (science & technology), HL (health), ED (education), AG (agriculture), ENV (environment), CD (community development), EN (energy), BC (business & commerce).",
            "items": {
              "type": "string"
            }
          },
          "assistanceListing": {
            "title": "Grants.gov: Assistance Listing (CFDA) number",
            "type": "string",
            "description": "Optional. e.g. 47.070."
          },
          "postedInLastDays": {
            "title": "Grants.gov: posted in the last N days",
            "minimum": 0,
            "maximum": 3650,
            "type": "integer",
            "description": "0 = any date. Use 7 with \"Only new\" for a weekly alert.",
            "default": 0
          },
          "closingInNextDays": {
            "title": "Grants.gov: closing in the next N days",
            "minimum": 0,
            "maximum": 3650,
            "type": "integer",
            "description": "0 = no deadline filter. Keeps only opportunities with a deadline between today and N days from now.",
            "default": 0
          },
          "includeDetails": {
            "title": "Grants.gov: include details",
            "type": "boolean",
            "description": "Award ceiling and floor, estimated total funding, expected number of awards, eligibility, cost sharing, funding instrument, category and description (one extra request per opportunity).",
            "default": true
          },
          "awardedInLastDays": {
            "title": "Awards: awarded / started in the last N days",
            "minimum": 0,
            "maximum": 36500,
            "type": "integer",
            "description": "NIH: award notice date; UKRI: grant start date. 0 = any date.",
            "default": 365
          },
          "nihFiscalYears": {
            "title": "NIH: fiscal years",
            "type": "array",
            "description": "Optional. e.g. 2026, 2025.",
            "items": {
              "type": "string"
            }
          },
          "nihInstitutes": {
            "title": "NIH: institutes / centers",
            "type": "array",
            "description": "Optional. Abbreviations, e.g. NCI, NIAID, NHLBI, NIMH, NIA.",
            "items": {
              "type": "string"
            }
          },
          "nihActivityCodes": {
            "title": "NIH: activity codes",
            "type": "array",
            "description": "Optional. e.g. R01, R21, U01, R43 (SBIR), R44.",
            "items": {
              "type": "string"
            }
          },
          "organizations": {
            "title": "NIH: recipient organizations",
            "type": "array",
            "description": "Optional. Institution names as in RePORTER, e.g. \"JOHNS HOPKINS UNIVERSITY\".",
            "items": {
              "type": "string"
            }
          },
          "newAwardsOnly": {
            "title": "NIH: new awards only",
            "type": "boolean",
            "description": "Only type 1 (new) awards, no continuations.",
            "default": false
          },
          "minAwardAmount": {
            "title": "Awards: minimum amount",
            "minimum": 0,
            "type": "integer",
            "description": "NIH (USD) and UKRI (GBP). 0 = no minimum.",
            "default": 0
          },
          "includeDescription": {
            "title": "Include description / abstract",
            "type": "boolean",
            "description": "Opportunity synopsis or project abstract as plain text.",
            "default": true
          },
          "maxDescriptionChars": {
            "title": "Max description characters",
            "minimum": 200,
            "maximum": 100000,
            "type": "integer",
            "description": "Longer texts are cut.",
            "default": 3000
          },
          "onlyNew": {
            "title": "Only new records",
            "type": "boolean",
            "description": "Return only records not delivered in your previous runs with the same alert name. Schedule it daily or weekly for alerts.",
            "default": false
          },
          "alertName": {
            "title": "Alert name",
            "type": "string",
            "description": "Separate memory for each saved search when using \"Only new records\".",
            "default": "default"
          },
          "maxItems": {
            "title": "Max records",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "Upper limit of records returned in one run (all sources).",
            "default": 200
          },
          "maxPerSource": {
            "title": "Max records per source",
            "minimum": 0,
            "maximum": 50000,
            "type": "integer",
            "description": "0 = no per-source limit.",
            "default": 0
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}