GlobalGov Solicitations API

The Solicitations API from GlobalGov — 2 operation(s) for solicitations.

GitHub OpenAPI

Operations 2

GET /v1/solicitations List solicitations #
GET /v1/solicitations/{solicitation_id} Get a solicitation #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/globalgov-io:globalgov-io-solicitations-api"
All apis
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.

Get an API 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 Specification

globalgov-io-solicitations-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: GlobalGov Developer Solicitations API
  description: 'Read-only REST access to GlobalGov''s government-procurement corpus — solicitations, contract awards, vendors (entities), and agencies from national and multilateral sources, whatever language they were published in. Authenticate with a `ggk_` API key (`Authorization: Bearer ggk_live_...`). Cursor-paginated, explicit response schemas, RFC 9457 problem+json errors. No personal contact data is exposed. API access is included on the Intelligence plan and above (see https://globalgov.io/pricing); custom plans for high-volume use. Full guide: https://globalgov.io/developers'
  version: 1.0.0
servers:
- url: /api/public
- url: https://globalgov.io/api/public
  description: Live base URL
security:
- ApiKey: []
tags:
- name: Solicitations
paths:
  /v1/solicitations:
    get:
      tags:
      - Solicitations
      summary: List solicitations
      operationId: list_solicitations_v1_solicitations_get
      parameters:
      - name: country
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            minLength: 2
            maxLength: 2
          - type: 'null'
          description: ISO 3166-1 alpha-2 country code
          title: Country
        description: ISO 3166-1 alpha-2 country code
      - name: naics
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            maxLength: 10
          - type: 'null'
          title: Naics
      - name: status
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            maxLength: 40
          - type: 'null'
          description: e.g. ACTIVE, RFP
          title: Status
        description: e.g. ACTIVE, RFP
      - name: posted_after
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            format: date
          - type: 'null'
          description: published_date >= this date
          title: Posted After
        description: published_date >= this date
      - name: active
        in: query
        required: false
        schema:
          anyOf:
          - type: boolean
          - type: 'null'
          description: 'true returns only solicitations not in a terminal lifecycle state (AWARDED, CANCELLED, CLOSED, EXPIRED). This is a lifecycle filter, not an open-for-bidding filter: it does not check the response deadline.'
          title: Active
        description: 'true returns only solicitations not in a terminal lifecycle state (AWARDED, CANCELLED, CLOSED, EXPIRED). This is a lifecycle filter, not an open-for-bidding filter: it does not check the response deadline.'
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          maximum: 100
          minimum: 1
          default: 25
          title: Limit
      - name: cursor
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: Cursor
      - name: authorization
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: Authorization
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Page_Solicitation_'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/solicitations/{solicitation_id}:
    get:
      tags:
      - Solicitations
      summary: Get a solicitation
      operationId: get_solicitation_v1_solicitations__solicitation_id__get
      parameters:
      - name: solicitation_id
        in: path
        required: true
        schema:
          type: string
          title: Solicitation Id
      - name: authorization
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: Authorization
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Solicitation'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    Solicitation:
      properties:
        id:
          type: string
          title: Id
        solicitation_number:
          anyOf:
          - type: string
          - type: 'null'
          title: Solicitation Number
        title:
          anyOf:
          - type: string
          - type: 'null'
          title: Title
        title_original:
          anyOf:
          - type: string
          - type: 'null'
          title: Title Original
        agency_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Agency Name
        country_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Country Code
        country_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Country Name
        region:
          anyOf:
          - type: string
          - type: 'null'
          title: Region
        category:
          anyOf:
          - type: string
          - type: 'null'
          title: Category
        status:
          anyOf:
          - type: string
          - type: 'null'
          title: Status
        solicitation_type:
          anyOf:
          - type: string
          - type: 'null'
          title: Solicitation Type
        naics_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Naics Code
        naics_description:
          anyOf:
          - type: string
          - type: 'null'
          title: Naics Description
        psc_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Psc Code
        cpv_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Cpv Code
        unspsc_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Unspsc Code
        subcategory:
          anyOf:
          - type: string
          - type: 'null'
          title: Subcategory
        value_usd:
          anyOf:
          - type: number
          - type: 'null'
          title: Value Usd
        value_amount:
          anyOf:
          - type: number
          - type: 'null'
          title: Value Amount
        value_currency:
          anyOf:
          - type: string
          - type: 'null'
          title: Value Currency
        value_usd_exchange_rate:
          anyOf:
          - type: number
          - type: 'null'
          title: Value Usd Exchange Rate
        value_usd_exchange_date:
          anyOf:
          - type: string
            format: date
          - type: 'null'
          title: Value Usd Exchange Date
        published_date:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Published Date
        response_due_date:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Response Due Date
        question_due_date:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Question Due Date
        opportunity_type:
          anyOf:
          - type: string
          - type: 'null'
          title: Opportunity Type
        procurement_method:
          anyOf:
          - type: string
          - type: 'null'
          title: Procurement Method
        procurement_method_details:
          anyOf:
          - type: string
          - type: 'null'
          title: Procurement Method Details
        set_aside_type:
          anyOf:
          - type: string
          - type: 'null'
          title: Set Aside Type
        state_province:
          anyOf:
          - type: string
          - type: 'null'
          title: State Province
        place_of_performance_country:
          anyOf:
          - type: string
          - type: 'null'
          title: Place Of Performance Country
        place_of_performance_state_province:
          anyOf:
          - type: string
          - type: 'null'
          title: Place Of Performance State Province
        place_of_performance_city:
          anyOf:
          - type: string
          - type: 'null'
          title: Place Of Performance City
        source_url:
          anyOf:
          - type: string
          - type: 'null'
          title: Source Url
        submission_url:
          anyOf:
          - type: string
          - type: 'null'
          title: Submission Url
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
        documents:
          anyOf:
          - items: {}
            type: array
          - type: 'null'
          title: Documents
        ocid:
          anyOf:
          - type: string
          - type: 'null'
          title: Ocid
        external_id:
          anyOf:
          - type: string
          - type: 'null'
          title: External Id
        source_system:
          anyOf:
          - type: string
          - type: 'null'
          title: Source System
        original_language:
          anyOf:
          - type: string
          - type: 'null'
          title: Original Language
      type: object
      required:
      - id
      title: Solicitation
    Page_Solicitation_:
      properties:
        data:
          items:
            $ref: '#/components/schemas/Solicitation'
          type: array
          title: Data
        next_cursor:
          anyOf:
          - type: string
          - type: 'null'
          title: Next Cursor
        has_more:
          type: boolean
          title: Has More
          default: false
      type: object
      required:
      - data
      title: Page[Solicitation]
  securitySchemes:
    ApiKey:
      type: http
      scheme: bearer
      bearerFormat: ggk_live_...
      description: API key from Settings -> API & MCP Access