Genuine Good News grant preflight API
The grant preflight API from Genuine Good News — 1 operation(s) for grant preflight.
The grant preflight API from Genuine Good News — 1 operation(s) for grant preflight.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/genuinegood-online:genuinegood-online-grant-preflight-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Genuine Good Grants / Genuine Good Grants grant preflight…
version: 1.0.0
description: Independent paid API for current U.S. federal grant discovery using Grants.gov public records. This product uses the Grants.gov API but is not endorsed or certified by the U.S. Department of Health and Human Services.
termsOfService: https://genuinegood.online/terms
contact:
name: Genuine Good Grants
email: hello@genuinegood.online
url: https://genuinegood.online/grants
x-guidance: Use the POST form of the six /v1/grants routes. Send a descriptive User-Agent identifying your actual client and version; the default Python urllib user-agent can be denied at the edge before reaching the API. Do not impersonate a browser. Send JSON without PAYMENT-SIGNATURE first to receive a 402 response, then sign the accepted Base USDC x402 option and retry the identical request. Five grant tools cost $5 USDC per request; the non-renewing 30-day pass costs $15 and supports up to 1,000 calls. See /grants/quickstart.
servers:
- url: https://genuinegood.online
tags:
- name: grant preflight
paths:
/v1/grants/preflight:
post:
operationId: federal-grant-shortlist-preflight
summary: Federal Grant Shortlist Preflight
description: 'Run deterministic rule-based checks over up to five retrieved Grants.gov notices: deadline horizon, listed applicant-type code intersection, source-field completeness, and official-notice verification flags. Payment flow: send the request without PAYMENT-SIGNATURE, read PAYMENT-REQUIRED from the 402 response, sign one accepted option, then retry the identical request with PAYMENT-SIGNATURE.'
tags:
- grant preflight
x-x402:
version: 2
scheme: exact
network: eip155:8453
asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
amount: '5000000'
priceUsd: '5.00'
x-payment-info:
protocols:
- x402: {}
price:
mode: fixed
currency: USD
amount: '5.000000'
parameters:
- name: PAYMENT-SIGNATURE
in: header
required: false
description: Base64-encoded x402 v2 payment payload. First call without this header to receive PAYMENT-REQUIRED, then retry the same request with the signed payload.
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
opportunityIds:
type: array
minItems: 1
maxItems: 5
uniqueItems: true
items:
type: integer
minimum: 1
applicantTypeCodes:
type: array
maxItems: 12
items:
type: string
minLength: 1
maxLength: 40
deadlineHorizonDays:
type: integer
minimum: 7
maximum: 365
default: 60
required:
- opportunityIds
additionalProperties: false
responses:
'200':
description: Paid result
headers:
PAYMENT-RESPONSE:
description: Base64-encoded x402 settlement response for a successful paid retry
schema:
type: string
content:
application/json:
schema:
type: object
required:
- generatedAt
- request
- evaluatedCount
- results
- caveat
- attribution
properties:
generatedAt:
type: string
format: date-time
request:
type: object
properties:
opportunityIds:
type: array
minItems: 1
maxItems: 5
uniqueItems: true
items:
type: integer
minimum: 1
applicantTypeCodes:
type: array
maxItems: 12
items:
type: string
minLength: 1
maxLength: 40
deadlineHorizonDays:
type: integer
minimum: 7
maximum: 365
default: 60
required:
- opportunityIds
additionalProperties: false
evaluatedCount:
type: integer
minimum: 0
maximum: 5
results:
type: array
maxItems: 5
items:
type: object
required:
- opportunityId
- screening
- official
- source
properties:
opportunityId:
type: string
screening:
type: object
required:
- deadlineState
- applicantTypeSignal
- eligibilityTextState
- awardRangeState
- costSharingState
- officialNoticeVerificationRequired
- manualReviewRequired
- flags
properties:
deadlineState:
type: string
enum:
- past_due
- within_horizon
- outside_horizon
- ongoing
- unknown
applicantTypeSignal:
type: string
enum:
- listed_code_intersects
- no_listed_code_intersection
- not_checked
eligibilityTextState:
type: string
enum:
- present
- missing
awardRangeState:
type: string
enum:
- complete
- partial
- missing
costSharingState:
type: string
enum:
- required
- not_required
- unknown
officialNoticeVerificationRequired:
type: boolean
const: true
description: The buyer must verify the result against the complete official notice before acting.
manualReviewRequired:
type: boolean
const: true
deprecated: true
description: Legacy compatibility field. True means official-notice verification is required; it does not promise human review.
flags:
type: array
items:
type: string
additionalProperties: false
official:
type: object
additionalProperties: true
source:
type: object
required:
- publisher
- api
- accessedAt
properties:
publisher:
type: string
const: Grants.gov
api:
type: string
format: uri
accessedAt:
type: string
format: date-time
terms:
type: string
format: uri
additionalProperties: true
additionalProperties: false
caveat:
type: string
const: Deterministic rule-based checks over the retrieved Grants.gov notice only. Applicant-type results report listed-code intersection, not eligibility. This is not an eligibility determination, legal opinion, award prediction, or government endorsement.
attribution:
type: string
const: This product uses the Grants.gov API but is not endorsed or certified by the U.S. Department of Health and Human Services.
additionalProperties: false
'402':
description: 'x402 payment required: 5.00 USDC on Base mainnet'
headers:
PAYMENT-REQUIRED:
description: Base64-encoded x402 v2 payment requirements
schema:
type: string
get:
operationId: federal-grant-shortlist-preflight-get
summary: Federal Grant Shortlist Preflight
description: 'Run deterministic rule-based checks over up to five retrieved Grants.gov notices: deadline horizon, listed applicant-type code intersection, source-field completeness, and official-notice verification flags. GET compatibility accepts the same input as query parameters. Array values may be comma-separated.'
tags:
- grant preflight
x-x402:
version: 2
scheme: exact
network: eip155:8453
asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
amount: '5000000'
priceUsd: '5.00'
x-payment-info:
protocols:
- x402: {}
price:
mode: fixed
currency: USD
amount: '5.000000'
parameters:
- name: opportunityIds
in: query
required: true
schema:
type: array
minItems: 1
maxItems: 5
uniqueItems: true
items:
type: integer
minimum: 1
style: form
explode: false
- name: applicantTypeCodes
in: query
required: false
schema:
type: array
maxItems: 12
items:
type: string
minLength: 1
maxLength: 40
style: form
explode: false
- name: deadlineHorizonDays
in: query
required: false
schema:
type: integer
minimum: 7
maximum: 365
default: 60
- name: PAYMENT-SIGNATURE
in: header
required: false
description: Base64-encoded x402 v2 payment payload. First call without this header to receive PAYMENT-REQUIRED, then retry the same request with the signed payload.
schema:
type: string
responses:
'200':
description: Paid result
headers:
PAYMENT-RESPONSE:
description: Base64-encoded x402 settlement response for a successful paid retry
schema:
type: string
content:
application/json:
schema:
type: object
required:
- generatedAt
- request
- evaluatedCount
- results
- caveat
- attribution
properties:
generatedAt:
type: string
format: date-time
request:
type: object
properties:
opportunityIds:
type: array
minItems: 1
maxItems: 5
uniqueItems: true
items:
type: integer
minimum: 1
applicantTypeCodes:
type: array
maxItems: 12
items:
type: string
minLength: 1
maxLength: 40
deadlineHorizonDays:
type: integer
minimum: 7
maximum: 365
default: 60
required:
- opportunityIds
additionalProperties: false
evaluatedCount:
type: integer
minimum: 0
maximum: 5
results:
type: array
maxItems: 5
items:
type: object
required:
- opportunityId
- screening
- official
- source
properties:
opportunityId:
type: string
screening:
type: object
required:
- deadlineState
- applicantTypeSignal
- eligibilityTextState
- awardRangeState
- costSharingState
- officialNoticeVerificationRequired
- manualReviewRequired
- flags
properties:
deadlineState:
type: string
enum:
- past_due
- within_horizon
- outside_horizon
- ongoing
- unknown
applicantTypeSignal:
type: string
enum:
- listed_code_intersects
- no_listed_code_intersection
- not_checked
eligibilityTextState:
type: string
enum:
- present
- missing
awardRangeState:
type: string
enum:
- complete
- partial
- missing
costSharingState:
type: string
enum:
- required
- not_required
- unknown
officialNoticeVerificationRequired:
type: boolean
const: true
description: The buyer must verify the result against the complete official notice before acting.
manualReviewRequired:
type: boolean
const: true
deprecated: true
description: Legacy compatibility field. True means official-notice verification is required; it does not promise human review.
flags:
type: array
items:
type: string
additionalProperties: false
official:
type: object
additionalProperties: true
source:
type: object
required:
- publisher
- api
- accessedAt
properties:
publisher:
type: string
const: Grants.gov
api:
type: string
format: uri
accessedAt:
type: string
format: date-time
terms:
type: string
format: uri
additionalProperties: true
additionalProperties: false
caveat:
type: string
const: Deterministic rule-based checks over the retrieved Grants.gov notice only. Applicant-type results report listed-code intersection, not eligibility. This is not an eligibility determination, legal opinion, award prediction, or government endorsement.
attribution:
type: string
const: This product uses the Grants.gov API but is not endorsed or certified by the U.S. Department of Health and Human Services.
additionalProperties: false
'402':
description: 'x402 payment required: 5.00 USDC on Base mainnet'
headers:
PAYMENT-REQUIRED:
description: Base64-encoded x402 v2 payment requirements
schema:
type: string
externalDocs:
description: This product uses the Grants.gov API but is not endorsed or certified by the U.S. Department of Health and Human Services.
url: https://www.grants.gov/api/terms-conditions