Documentation

The GrantField
guide.

How to take your organization from a blank profile to a scored, explained shortlist of US R&D funding, and how to drive the same engine from the API. This is a living document; sections expand as the product does.

Run a match Jump to the API
Draft · evolving with the product
01 · Guide

Getting started

GrantField maps every federal, state, and private R&D funding call in the United States into one normalized field, then matches your organization to the calls it is genuinely eligible for. You can explore the whole field for free, with no account. Matching, which scores and explains each call against your specific profile, takes a signed-in account and credits.

Create your account

  1. 01
    Open Account and create an account with your work email. Sign-in is passwordless: a device passkey is the primary path, with a magic link as the fallback.
  2. 02
    Confirm your email if prompted. New accounts start with a small credit balance you can use immediately.
  3. 03
    Fill in your organization profile (next section). The richer the profile, the sharper the match.

Explore first, free

If you just want to see what is out there, open Explore. It loads the full field, with every tracked opportunity, its source, status, and deadline. No credits are spent browsing, only running a match against your profile does.

02 · Guide

Running a match

A match run screens the entire field against one organization profile, scores every call that survives the eligibility gate on a transparent rubric, and returns a ranked, written report. A standard run costs 10 credits; the compact tier (a shorter shortlist) costs 5 and the deep tier (a wider shortlist with deeper analysis) costs 20. You pick the tier on the Match form before running.

Describe your organization

On Match, set:

Organization type
Company, startup, university, research organization, nonprofit, public authority, or individual. Drives most eligibility gates.
Size band
Headcount bracket, from micro (1 to 9) up to large (3,000 or more). Some programs cap or target by size.
State
Your primary US state or territory. Used for state-program eligibility and place-of-performance rules.
Technology and sector chips
What you build and the domains you work in. These steer relevance scoring, not just gating.
Free-text description
A few sentences on what you do and what you want to fund. Longer, specific descriptions match better than a single line.

Run it

  1. 01
    Press Match. The run screens the field, applies the legal precheck, then scores and ranks the survivors.
  2. 02
    A run typically resolves in seconds. The result is saved as a report on your account, so you can reopen it later without rerunning.
  3. 03
    Adjust the profile and run again to compare. Each run is a fresh report at its tier's credit cost.

Profiles are saved to your account, so the next run starts from where you left off rather than a blank form.

03 · Guide

Reading your report

A report is a ranked list of calls, each with a score, an eligibility verdict, and written reasoning. It is built to be acted on, not just skimmed. To see a complete example before running one, open the sample report for a fictional organization.

The score

Every eligible call is rated 0 to 100 on a fixed rubric. The four components and their maxima are:

Domain alignment (30)
How well the call's domain matches the sectors you work in.
Technology match (30)
Overlap between your declared technologies and what the call funds.
Organization eligibility (20)
Fit on type, size, and place rules, above the hard gate.
Description fit (20)
How closely your free-text description maps to the call's intent.

Scores are comparable across calls in a report because the rubric is the same for all of them. The order you see in the report is the product's ranking, not a raw sort of these component sums alone.

The verdict and rationale

Each call carries an eligibility verdict and a short written rationale: why it surfaced, what it funds, and what to watch for. The report also keeps an honest count of what was screened out and why, so a short list does not hide a large field.

Advice fields

Where available, a call includes key requirements, partnership needs, where your organization adds value, and the main challenge to clearing. Treat these as a starting brief for a go or no-go decision, not a substitute for reading the solicitation.

04 · Guide

Eligibility and how matching works

Matching runs in two stages: a hard eligibility gate, then relevance scoring on what passes. Keeping them separate is deliberate. A call you cannot legally win should never rank, however well it reads.

The eligibility gate

Before anything is scored, each call goes through a legal precheck against your organization type, size band, and state or territory. Calls whose stated eligibility rules out your profile are removed and counted as screened out, with the reason recorded. This is the gate that makes a GrantField shortlist trustworthy: presence in your report means you clear the basic bar.

Relevance scoring

Survivors are scored on the four-component rubric above, blending structured signals (type, size, place, declared technologies and sectors) with how well your free-text description maps to the call. The result is a 0 to 100 figure per call.

Ranking

The final order in a report is set by GrantField's ranking, which weighs the rubric signal to surface the calls most worth your attention first. The rubric components are shown for transparency; the rank reflects the product's judgment of fit, not a bare arithmetic sort. Coverage is US-only by design.

Freshness

The field is refreshed daily. A call's status (open, upcoming, closed) and deadline reflect the most recent refresh, shown on the opportunity. Rerun a match to score against the latest field.

05 · Guide

Troubleshooting and common errors

Most issues fall into a few buckets. If something here does not resolve it, email grantfield.admin@gmail.com with your account email and roughly when it happened.

Empty or very short shortlist
Often the profile is too narrow or the eligibility gate is removing most calls. Widen your technology and sector chips, or check that organization type, size, and state are set correctly. The screened-out count tells you how much the gate removed.
A call you expected is missing
It may have been screened out on eligibility, or its status changed at the last daily refresh. Find it in Explore to see its current status and stated eligibility.
Match will not run / spins
Confirm you are signed in with enough credits for the tier you picked. If a run fails on our side, the credits come back automatically.
Report did not save
Reports attach to your account at run time. If one is missing, reload the Reports tab; reports load there once the run completes.
Sign-in or passkey trouble
Use the magic-link fallback on the Account page if a passkey will not present. Lost-passkey recovery is on the same page.
Out of credits
Top up on the Pricing page. Credits do not expire and apply to your next runs.
06 · Guide

Using the GrantField API

The same service behind the web app is reachable over HTTP, so you can run matches from your own systems: a grants-management tool, an internal dashboard, or a scheduled job that re-scores your profile against the daily refresh. Every call the app makes is available to you, authenticated with an API key you mint from your account. Requests go to your service base URL; paths are shown relative to it below.

Programmatic access is live but still hardening. Field names track the app and can change before a versioned release; pin to what your account returns and email support before you build against it in production.

Authentication

Requests authenticate with an API key sent as a bearer token. Create one under Account, in the API keys panel. A key is shown once at creation and never again, so store it immediately; the server keeps only a hash and can never redisplay it. A key carries the full rights of your account and spends the same credits, so keep it server-side and never ship one in client JavaScript. Revoke a key from the same panel the moment it might be exposed.

Authorization: Bearer gf_0123456789abcdef0123456789abcdef01234567

Keys begin gf_. Requests with no key, an unknown key, or a revoked key are rejected with 401. Each key is independently rate limited (see below).

Running a match

A match is a single POST. The body is your organization profile, the same fields the Match form collects; the optional tier query parameter is compact, standard (the default), or deep, and sets the shortlist size and credit cost.

POST /match?tier=standard
Authorization: Bearer gf_...
Content-Type: application/json

{
  "name": "Meridian Robotics",
  "organization_type": "startup",
  "size_band": "small",
  "state": "CA",
  "technology_chips": ["AI/ML", "Drones / Autonomous Systems"],
  "sector_chips": ["Security & Defense"],
  "description": "We build autonomous inspection drones for critical infrastructure and want to fund a dual-use R&D program."
}

Valid values match the Match form exactly. organization_type is one of company, startup, university, research_organization, nonprofit, public_body, individual. size_band is micro, small, medium, mid, or large (or omitted). state is a USPS state, DC, or territory code (or omitted). technology_chips and sector_chips use the exact chip labels from the Match form. description must be 40 to 4000 characters.

The response is progressive

Scoring runs asynchronously, so POST /match returns immediately with the debit already taken, the shortlist chosen, and status set to "scoring". Each match's assessment is null at this point. Take the id from this envelope and poll GET /reports/{id} until status is "complete"; the assessments fill in as they land. The web app polls roughly every 2.5 seconds.

200 OK
{
  "id": "8f2a6c14-...",
  "status": "scoring",
  "tier": "standard",
  "credits_debited": 10,
  "model": "claude-opus-4-8",
  "corpus_refreshed_at": "2026-07-03T06:00:00Z",
  "exclusions": {
    "total": 3184, "eligible": 611, "review": 88, "excluded": 2485,
    "excluded_by": { "beneficiary": 1902, "region": 210, "size": 44, "deadline_passed": 640 },
    "review_by": { "beneficiary": 61, "region": 20, "size": 7 }
  },
  "profile": { "name": "Meridian Robotics", "organization_type": "startup" },
  "matches": [
    {
      "programme_id": "sbir-af-24-1-...",
      "title": "SBIR Phase I: Autonomous Systems",
      "agency": "Department of the Air Force",
      "agency_short": "USAF",
      "status": "open",
      "close_date": "2026-08-15",
      "is_rolling": false,
      "funding_min": 50000, "funding_max": 150000,
      "opportunity_url": "https://www.sbir.gov/node/...",
      "in_state": false,
      "precheck": { "verdict": "eligible", "reasons": ["Small business set-aside"] },
      "shortlist_rank": 1,
      "assessment": null
    }
  ]
}

Once scoring completes, each match's assessment is populated. total is the 0 to 100 rubric score; the four components each carry their own score and one-line rationale; eligibility_verdict is likely_eligible, uncertain, or likely_ineligible; and the strategic fields mirror the report's advice panel:

"assessment": {
  "total": 86,
  "domain_alignment": { "score": 26, "rationale": "Core domain is the funded topic." },
  "technology_match": { "score": 24, "rationale": "Autonomous systems align tightly." },
  "organization_eligibility": { "score": 18, "rationale": "Startup fits the set-aside." },
  "description_fit": { "score": 18, "rationale": "Dual-use intent matches the call." },
  "eligibility_verdict": "likely_eligible",
  "why_this_fits": "The call funds uncrewed systems for critical infrastructure ...",
  "requirements": ["US-owned small business", "Phase I feasibility study"],
  "strategic_advice": {
    "partnership_needs": "A utility partner strengthens the field-test claim.",
    "services_value": "Your two pilot deployments are direct evidence.",
    "main_challenge": "Meeting the Phase I timeline with current staffing."
  }
}

Matches are returned in GrantField's ranking order (scored calls first, by total descending). Reports created over the API also appear under Reports in your account, and GET /reports lists them. A run whose scoring fails internally is auto-refunded, the same as in the app.

Errors, rate limits, and credits

Every error returns JSON in the shape {"error": {"code", "message"}}. Each key is limited to a fixed number of requests per minute; over the limit, the request returns 429 and is not charged, so retry with backoff. A standard run costs 10 credits (compact 5, deep 20), debited when the run is accepted. A failed run is not charged.

200 ok
Match accepted. The scoring envelope is returned and the tier's credits are debited; poll the report for assessments.
401 unauthorized
Missing, invalid, or revoked API key.
402 insufficient_credits
Not enough credits for this tier. Top up on Pricing, then retry.
422 invalid_profile
The profile failed validation, for example a description under 40 characters or a non-USPS state code.
429 rate_limited
The key's per-minute limit is exceeded. Back off and retry; not charged.
503 budget_exhausted
The service's daily spend ceiling is reached. Retry later; not charged.

Need higher rate limits, a versioned contract, or metered billing for a team? Email grantfield.admin@gmail.com.

07 · Guide

Where this fits in the grant process

GrantField is the discovery and triage layer: it answers which calls are worth your time and why, before you commit to writing. It is deliberately scoped to that stage rather than trying to be the whole pipeline.

A full grant lifecycle runs roughly: discover and qualify, decide go or no-go, write and assemble, submit, then manage the award if you win. GrantField owns the first two and feeds the rest. A scored report with eligibility verdicts and requirement notes is the brief you hand to whoever writes, or the trigger that opens a workflow in your grants-management system over the API.

The roadmap deepens this connective role: saved profiles and reports that update against the daily refresh, alerts on newly opened and closing-soon calls that fit you, and tighter handoffs into the tools where proposals actually get written and tracked. Coverage stays US-only, and the through-line stays the same. Spend effort only on the funding you can genuinely win.