GovGazette Exclusions API
The Exclusions API from GovGazette — 4 operation(s) for exclusions.
The Exclusions API from GovGazette — 4 operation(s) for exclusions.
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/govgazette-com:govgazette-com-exclusions-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: GovGazette Exclusions API
version: 0.1.0
servers:
- url: https://govgazette.com
tags:
- name: Exclusions
paths:
/api/v1/exclusions/changes:
get:
operationId: get_api_v1_exclusions_changes
parameters:
- in: query
name: cursor
required: false
schema:
description: Opaque next_cursor from an earlier change page.
type:
- string
- 'null'
- in: query
name: from_generation
required: true
schema:
description: Older retained snapshot UUID to compare.
type: string
- in: query
name: limit
required: false
schema:
description: Maximum changes to return, up to the service page limit.
format: uint
maximum: 50
minimum: 1
type:
- integer
- 'null'
- in: query
name: to_generation
required: false
schema:
description: Newer retained snapshot UUID; omit for the current snapshot.
type:
- string
- 'null'
responses:
'200':
content:
application/json:
schema:
$defs:
ExclusionChange:
properties:
change:
type: string
id:
type: string
title:
type: string
required:
- id
- title
- change
type: object
ExclusionCoverage:
properties:
freshness:
$ref: '#/components/schemas/SourceFreshness'
description: Fresh, stale, unknown or unavailable, with age and the 24-hour warning policy.
observed_at:
description: Observation time does not replace the official source timestamp.
type:
- string
- 'null'
scope:
type:
- string
- 'null'
sha256:
type:
- string
- 'null'
source_date:
type:
- string
- 'null'
source_url:
type:
- string
- 'null'
status:
description: Present as unavailable when no SAM coverage exists in this generation.
type:
- string
- 'null'
required:
- freshness
type: object
FreshnessState:
enum:
- fresh
- stale
- unknown
- unavailable
type: string
SourceFreshness:
properties:
attention_required:
type: boolean
evaluated_at:
description: UTC time when age was evaluated; source and observation dates are unchanged.
type: string
max_age_seconds:
description: Explicit warning threshold for this daily snapshot. Not a scheduler promise.
format: int64
type: integer
source_age_seconds:
description: Age of the official source timestamp, never the import or enrichment timestamp.
format: int64
type:
- integer
- 'null'
state:
$ref: '#/components/schemas/FreshnessState'
warn_age_seconds:
description: Early-warning boundary, separate from the stale-source boundary.
format: int64
type: integer
warning:
description: User-facing warning, or null when within the warning threshold.
type:
- string
- 'null'
required:
- state
- evaluated_at
- max_age_seconds
- warn_age_seconds
- attention_required
type: object
$schema: https://json-schema.org/draft/2020-12/schema
properties:
from_coverage:
$ref: '#/components/schemas/ExclusionCoverage'
from_generation:
type: string
items:
items:
$ref: '#/components/schemas/ExclusionChange'
type: array
meaning:
type: string
next_cursor:
type:
- string
- 'null'
to_coverage:
$ref: '#/components/schemas/ExclusionCoverage'
to_generation:
type: string
required:
- from_generation
- to_generation
- from_coverage
- to_coverage
- items
- meaning
type: object
description: Source-backed result
'400':
description: Invalid parameters or unavailable snapshot
summary: Observed changes between retained snapshots
x-openai-isConsequential: false
tags:
- Exclusions
/api/v1/exclusions/check:
post:
operationId: post_api_v1_exclusions_check
requestBody:
content:
application/json:
schema:
$schema: https://json-schema.org/draft/2020-12/schema
additionalProperties: false
properties:
generation:
description: Retained snapshot UUID; omit for the current snapshot.
type:
- string
- 'null'
identities:
description: One to twenty identities to compare with the dated SAM snapshot.
items:
additionalProperties: false
properties:
cage:
description: Exact five-character CAGE code, when known.
type:
- string
- 'null'
name:
description: Person or organization name; name-only matches are possible matches.
type:
- string
- 'null'
npi:
description: Exact ten-digit National Provider Identifier, when known.
type:
- string
- 'null'
uei:
description: Exact 12-character Unique Entity ID, when known.
type:
- string
- 'null'
type: object
maxItems: 20
minItems: 1
type: array
required:
- identities
title: CheckQuery
type: object
required: true
responses:
'200':
content:
application/json:
schema:
$defs:
ExclusionCoverage:
properties:
freshness:
$ref: '#/components/schemas/SourceFreshness'
description: Fresh, stale, unknown or unavailable, with age and the 24-hour warning policy.
observed_at:
description: Observation time does not replace the official source timestamp.
type:
- string
- 'null'
scope:
type:
- string
- 'null'
sha256:
type:
- string
- 'null'
source_date:
type:
- string
- 'null'
source_url:
type:
- string
- 'null'
status:
description: Present as unavailable when no SAM coverage exists in this generation.
type:
- string
- 'null'
required:
- freshness
type: object
ExclusionMatch:
properties:
identity:
$ref: '#/components/schemas/Identity'
records:
description: Candidate exclusion records with match basis; not a clearance decision.
items:
$ref: '#/components/schemas/JsonObject'
type: array
snapshot_status:
description: Observed lookup outcome in the dated snapshot, even when status is unavailable.
type: string
status:
description: 'Exact or possible match, fresh-snapshot no-match, or unavailable. Stale,
unknown and missing sources never produce a clean no-match status.'
type: string
truncated:
type: boolean
required:
- identity
- status
- snapshot_status
- records
- truncated
type: object
FreshnessState:
enum:
- fresh
- stale
- unknown
- unavailable
type: string
Identity:
additionalProperties: false
properties:
cage:
description: Exact five-character CAGE code, when known.
type:
- string
- 'null'
name:
description: Person or organization name; name-only matches are possible matches.
type:
- string
- 'null'
npi:
description: Exact ten-digit National Provider Identifier, when known.
type:
- string
- 'null'
uei:
description: Exact 12-character Unique Entity ID, when known.
type:
- string
- 'null'
type: object
JsonObject:
description: Source-specific JSON map. The envelope is stable; map keys vary by official source.
type: object
SourceFreshness:
properties:
attention_required:
type: boolean
evaluated_at:
description: UTC time when age was evaluated; source and observation dates are unchanged.
type: string
max_age_seconds:
description: Explicit warning threshold for this daily snapshot. Not a scheduler promise.
format: int64
type: integer
source_age_seconds:
description: Age of the official source timestamp, never the import or enrichment timestamp.
format: int64
type:
- integer
- 'null'
state:
$ref: '#/components/schemas/FreshnessState'
warn_age_seconds:
description: Early-warning boundary, separate from the stale-source boundary.
format: int64
type: integer
warning:
description: User-facing warning, or null when within the warning threshold.
type:
- string
- 'null'
required:
- state
- evaluated_at
- max_age_seconds
- warn_age_seconds
- attention_required
type: object
$schema: https://json-schema.org/draft/2020-12/schema
properties:
coverage:
$ref: '#/components/schemas/ExclusionCoverage'
generation:
type: string
results:
items:
$ref: '#/components/schemas/ExclusionMatch'
type: array
required:
- generation
- results
- coverage
type: object
description: Source-backed result
'400':
description: Invalid parameters or unavailable snapshot
summary: Check identifiers without determining eligibility
x-openai-isConsequential: false
tags:
- Exclusions
/api/v1/exclusions/context:
get:
operationId: get_api_v1_exclusions_context
parameters:
- in: query
name: generation
required: false
schema:
description: Retained snapshot UUID; omit for the current snapshot.
type:
- string
- 'null'
- in: query
name: id
required: true
schema:
description: Stable exclusion record ID returned by search_exclusions or check_exclusions.
type: string
responses:
'200':
content:
application/json:
schema:
$defs:
ExclusionCoverage:
properties:
freshness:
$ref: '#/components/schemas/SourceFreshness'
description: Fresh, stale, unknown or unavailable, with age and the 24-hour warning policy.
observed_at:
description: Observation time does not replace the official source timestamp.
type:
- string
- 'null'
scope:
type:
- string
- 'null'
sha256:
type:
- string
- 'null'
source_date:
type:
- string
- 'null'
source_url:
type:
- string
- 'null'
status:
description: Present as unavailable when no SAM coverage exists in this generation.
type:
- string
- 'null'
required:
- freshness
type: object
FreshnessState:
enum:
- fresh
- stale
- unknown
- unavailable
type: string
JsonObject:
description: Source-specific JSON map. The envelope is stable; map keys vary by official source.
type: object
SourceFreshness:
properties:
attention_required:
type: boolean
evaluated_at:
description: UTC time when age was evaluated; source and observation dates are unchanged.
type: string
max_age_seconds:
description: Explicit warning threshold for this daily snapshot. Not a scheduler promise.
format: int64
type: integer
source_age_seconds:
description: Age of the official source timestamp, never the import or enrichment timestamp.
format: int64
type:
- integer
- 'null'
state:
$ref: '#/components/schemas/FreshnessState'
warn_age_seconds:
description: Early-warning boundary, separate from the stale-source boundary.
format: int64
type: integer
warning:
description: User-facing warning, or null when within the warning threshold.
type:
- string
- 'null'
required:
- state
- evaluated_at
- max_age_seconds
- warn_age_seconds
- attention_required
type: object
$schema: https://json-schema.org/draft/2020-12/schema
properties:
business_context:
$ref: '#/components/schemas/JsonObject'
description: Supported vendor and award links, with match basis.
collection:
type: string
coverage:
$ref: '#/components/schemas/ExclusionCoverage'
description: Dated SAM source coverage.
data:
$ref: '#/components/schemas/JsonObject'
generation:
type: string
id:
type: string
text:
type: string
text_has_more:
type: boolean
text_length:
format: uint
minimum: 0
type: integer
title:
type: string
required:
- generation
- collection
- id
- title
- text
- data
- text_length
- text_has_more
- coverage
- business_context
type: object
description: Source-backed result
'400':
description: Invalid parameters or unavailable snapshot
summary: Exclusion context and evidence
x-openai-isConsequential: false
tags:
- Exclusions
/api/v1/exclusions/search:
get:
operationId: get_api_v1_exclusions_search
parameters:
- in: query
name: agency
required: false
schema:
description: Excluding agency name or code.
type:
- string
- 'null'
- in: query
name: classification
required: false
schema:
description: Official SAM exclusion classification code or label.
type:
- string
- 'null'
- in: query
name: country
required: false
schema:
description: Country name or code in the exclusion record.
type:
- string
- 'null'
- in: query
name: cursor
required: false
schema:
description: Opaque next_cursor from a previous search response.
type:
- string
- 'null'
- in: query
name: effective_from
required: false
schema:
description: Include records effective on or after this ISO date.
type:
- string
- 'null'
- in: query
name: effective_to
required: false
schema:
description: Include records effective on or before this ISO date.
type:
- string
- 'null'
- in: query
name: generation
required: false
schema:
description: Retained snapshot UUID; omit for the current snapshot.
type:
- string
- 'null'
- in: query
name: limit
required: false
schema:
description: Maximum records to return, up to the service page limit.
format: uint
maximum: 50
minimum: 1
type:
- integer
- 'null'
- in: query
name: program
required: false
schema:
description: Exclusion program name or code.
type:
- string
- 'null'
- in: query
name: q
required: false
schema:
description: Name, identifier, or other text to find in active exclusion records.
type:
- string
- 'null'
- in: query
name: state
required: false
schema:
description: US state name or postal code in the exclusion record.
type:
- string
- 'null'
responses:
'200':
content:
application/json:
schema:
$defs:
ExclusionCoverage:
properties:
freshness:
$ref: '#/components/schemas/SourceFreshness'
description: Fresh, stale, unknown or unavailable, with age and the 24-hour warning policy.
observed_at:
description: Observation time does not replace the official source timestamp.
type:
- string
- 'null'
scope:
type:
- string
- 'null'
sha256:
type:
- string
- 'null'
source_date:
type:
- string
- 'null'
source_url:
type:
- string
- 'null'
status:
description: Present as unavailable when no SAM coverage exists in this generation.
type:
- string
- 'null'
required:
- freshness
type: object
FreshnessState:
enum:
- fresh
- stale
- unknown
- unavailable
type: string
JsonObject:
description: Source-specific JSON map. The envelope is stable; map keys vary by official source.
type: object
RecordSummary:
properties:
data:
$ref: '#/components/schemas/JsonObject'
description: Source-specific fields, including provenance and official identifiers.
id:
description: Stable identifier for a record in this generation.
type: string
summary:
description: Short searchable text, when returned by this operation.
type:
- string
- 'null'
title:
description: Human-readable record title.
type: string
url:
description: Public canonical path for the record.
type: string
required:
- id
- title
- url
- data
type: object
SourceFreshness:
properties:
attention_required:
type: boolean
evaluated_at:
description: UTC time when age was evaluated; source and observation dates are unchanged.
type: string
max_age_seconds:
description: Explicit warning threshold for this daily snapshot. Not a scheduler promise.
format: int64
type: integer
source_age_seconds:
description: Age of the official source timestamp, never the import or enrichment timestamp.
format: int64
type:
- integer
- 'null'
state:
$ref: '#/components/schemas/FreshnessState'
warn_age_seconds:
description: Early-warning boundary, separate from the stale-source boundary.
format: int64
type: integer
warning:
description: User-facing warning, or null when within the warning threshold.
type:
- string
- 'null'
required:
- state
- evaluated_at
- max_age_seconds
- warn_age_seconds
- attention_required
type: object
$schema: https://json-schema.org/draft/2020-12/schema
properties:
coverage:
$ref: '#/components/schemas/ExclusionCoverage'
description: Dated source coverage, or an unavailable status.
generation:
type: string
items:
items:
$ref: '#/components/schemas/RecordSummary'
type: array
next_cursor:
type:
- string
- 'null'
required:
- generation
- items
- coverage
type: object
description: Source-backed result
'400':
description: Invalid parameters or unavailable snapshot
summary: Filter exclusion records
x-openai-isConsequential: false
tags:
- Exclusions
components:
schemas:
ExclusionCoverage:
type: object
description: Referenced by this document but never defined in it. API Evangelist added this empty placeholder so the document resolves; the shape is unknown and is NOT a claim about the API.
x-ae-placeholder: true
Identity:
type: object
description: Referenced by this document but never defined in it. API Evangelist added this empty placeholder so the document resolves; the shape is unknown and is NOT a claim about the API.
x-ae-placeholder: true
JsonObject:
type: object
description: Referenced by this document but never defined in it. API Evangelist added this empty placeholder so the document resolves; the shape is unknown and is NOT a claim about the API.
x-ae-placeholder: true
SourceFreshness:
type: object
description: Referenced by this document but never defined in it. API Evangelist added this empty placeholder so the document resolves; the shape is unknown and is NOT a claim about the API.
x-ae-placeholder: true
ExclusionMatch:
type: object
description: Referenced by this document but never defined in it. API Evangelist added this empty placeholder so the document resolves; the shape is unknown and is NOT a claim about the API.
x-ae-placeholder: true
FreshnessState:
type: object
description: Referenced by this document but never defined in it. API Evangelist added this empty placeholder so the document resolves; the shape is unknown and is NOT a claim about the API.
x-ae-placeholder: true
ExclusionChange:
type: object
description: Referenced by this document but never defined in it. API Evangelist added this empty placeholder so the document resolves; the shape is unknown and is NOT a claim about the API.
x-ae-placeholder: true
RecordSummary:
type: object
description: Referenced by this document but never defined in it. API Evangelist added this empty placeholder so the document resolves; the shape is unknown and is NOT a claim about the API.
x-ae-placeholder: true