ProspectAPIs Funding API

Search and read funding rounds.

Operations 2

GET /v1/funding Search funding rounds #
GET /v1/funding/{id} Read one funding round #

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/prospectapis:prospectapis-funding-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

prospectapis-funding-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ProspectAPIs Funding API
  summary: Funding signals and cited prospect research over one REST API.
  description: 'The REST contract for ProspectAPIs: funding rounds you can filter and page, cited prospect research briefs, and funding watchlists that push new matches to a webhook. Built for sales teams and the AI agents that work for them.


    Authentication is a bearer API key (`Authorization: Bearer pa_live_`), created in the dashboard. `GET /pricing`, `GET /health` and `GET /v1/version` need no key.


    Every account starts with a one-time free balance (`signup_credit_usd` in `GET /pricing`), and every paid call draws from it at its own price: `GET /v1/funding` per returned record (a no-match is free), `POST /v1/email/verify` per valid or invalid result, `POST /v1/research` per completed brief. Paid responses carry `X-Credits-Remaining`. The live price list is `GET /pricing`; a key''s balance is `GET /v1/account`. This document describes shapes, not prices.'
  version: 0.1.0
  contact:
    name: ProspectAPIs
    url: https://prospectapis.com
    email: emma@prospectapis.com
  license:
    name: Proprietary
    url: https://prospectapis.com/terms
  termsOfService: https://prospectapis.com/terms
servers:
- url: https://api.prospectapis.com
  description: Production
security:
- bearerAuth: []
tags:
- name: Funding
  description: Search and read funding rounds.
paths:
  /v1/funding:
    get:
      tags:
      - Funding
      summary: Search funding rounds
      description: 'Keyset-paginated funding rounds, newest first. Costs one record per record returned, drawn from the balance; a search that matches nothing is free. Pass `next_cursor` back as `cursor` for the next page. If the balance ends a page early the response carries `X-Result-Capped: balance` and `next_cursor` still continues exactly after the last record served. Price: $0.009 per record returned; a search that matches nothing is free. Coverage: funding rounds are complete from 2026-10-01, partial from 2026-09-22 to 2026-09-30, and only a few earlier rounds are held, so a company whose last round was before that returns none, and an empty answer carries a `coverage` object saying so.'
      operationId: searchFunding
      parameters:
      - $ref: '#/components/parameters/since'
      - $ref: '#/components/parameters/until'
      - $ref: '#/components/parameters/round'
      - $ref: '#/components/parameters/min_amount_usd'
      - $ref: '#/components/parameters/max_amount_usd'
      - $ref: '#/components/parameters/company'
      - $ref: '#/components/parameters/domain'
      - $ref: '#/components/parameters/investor'
      - $ref: '#/components/parameters/country'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/cursor'
      responses:
        '200':
          description: A page of funding rounds.
          headers:
            X-Credits-Remaining:
              $ref: '#/components/headers/X-Credits-Remaining'
            X-Free-Records-Remaining:
              $ref: '#/components/headers/X-Free-Records-Remaining'
            X-Result-Capped:
              description: Present and set to `balance` when the page was shortened to what the balance pays for. The data has more rows; pass `next_cursor` to continue.
              schema:
                type: string
                enum:
                - balance
            RateLimit-Limit:
              $ref: '#/components/headers/RateLimit-Limit'
            RateLimit-Remaining:
              $ref: '#/components/headers/RateLimit-Remaining'
            RateLimit-Reset:
              $ref: '#/components/headers/RateLimit-Reset'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FundingList'
              example:
                data:
                - id: 6f0c2b1e-7a1d-4c55-9a3e-1b2c3d4e5f60
                  company_name: Acme
                  announced_at: '2026-11-01'
                next_cursor: next cursor
                count: 1
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '402':
          $ref: '#/components/responses/PaymentRequired'
        '429':
          $ref: '#/components/responses/RateLimited'
      x-price-usd: 0.009
      x-agentic-access:
        action-class: connected
        consequence: read-billed
        subject: optional
        token:
          max-ttl: 3600
        audit: billing-ledger
  /v1/funding/{id}:
    get:
      tags:
      - Funding
      summary: Read one funding round
      description: 'One funding round by id. Costs one record when found; a 404 is free. Price: $0.009 per record returned; a 404 is free.'
      operationId: getFunding
      parameters:
      - $ref: '#/components/parameters/id'
      responses:
        '200':
          description: The funding round.
          headers:
            X-Credits-Remaining:
              $ref: '#/components/headers/X-Credits-Remaining'
            X-Free-Records-Remaining:
              $ref: '#/components/headers/X-Free-Records-Remaining'
            RateLimit-Limit:
              $ref: '#/components/headers/RateLimit-Limit'
            RateLimit-Remaining:
              $ref: '#/components/headers/RateLimit-Remaining'
            RateLimit-Reset:
              $ref: '#/components/headers/RateLimit-Reset'
          content:
            application/json:
              schema:
                type: object
                required:
                - data
                properties:
                  data:
                    $ref: '#/components/schemas/FundingRecord'
              example:
                data:
                  id: 6f0c2b1e-7a1d-4c55-9a3e-1b2c3d4e5f60
                  company_name: Acme
                  announced_at: '2026-11-01'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '402':
          $ref: '#/components/responses/PaymentRequired'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
      x-price-usd: 0.009
      x-agentic-access:
        action-class: connected
        consequence: read-billed
        subject: optional
        token:
          max-ttl: 3600
        audit: billing-ledger
components:
  responses:
    Unauthorized:
      description: The API key is missing or invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    BadRequest:
      description: The request was invalid (e.g. a bad filter or input); nothing was charged.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    RateLimited:
      description: Too many requests; retry after the window.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    PaymentRequired:
      description: Out of credits. The body carries `top_up_url`; nothing was charged.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: No such record for this account.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  parameters:
    country:
      name: country
      in: query
      description: Headquarters country. A country name or any two-letter ISO 3166-1 code (United States, US, Germany, DE) matches country_code exactly; any other text, such as a city, matches the stated place (the record's location), case-insensitive.
      schema:
        type: string
        maxLength: 60
    cursor:
      name: cursor
      in: query
      description: The previous page's `next_cursor`, passed back unchanged.
      schema:
        type: string
    company:
      name: company
      in: query
      description: Case-insensitive substring match on the company name (1 to 100 characters).
      schema:
        type: string
        maxLength: 100
    until:
      name: until
      in: query
      description: Only rounds announced on or before this date (inclusive), YYYY-MM-DD.
      schema:
        type: string
        format: date
    id:
      name: id
      in: path
      required: true
      description: A UUID.
      schema:
        type: string
        format: uuid
      example: 3f6c1d2e-8b4a-4f7e-9c21-5a0d7e9b4c13
    limit:
      name: limit
      in: query
      description: Page size, 1 to 100 (default 25).
      schema:
        type: integer
        minimum: 1
        maximum: 100
        default: 25
      example: 10
    domain:
      name: domain
      in: query
      description: Exact company domain, a bare domain such as `example.com`.
      schema:
        type: string
      example: example.com
    round:
      name: round
      in: query
      description: One or more round stages, comma-separated (1 to 20), such as `seed,series_a`.
      schema:
        type: string
      example: seed,series_a
    min_amount_usd:
      name: min_amount_usd
      in: query
      description: Only rounds of at least this USD amount.
      schema:
        type: number
        minimum: 0
    investor:
      name: investor
      in: query
      description: Rounds that include this investor (exact, case-insensitive).
      schema:
        type: string
        maxLength: 100
    since:
      name: since
      in: query
      description: Only rounds announced on or after this date (inclusive), YYYY-MM-DD.
      schema:
        type: string
        format: date
      example: '2026-10-01'
    max_amount_usd:
      name: max_amount_usd
      in: query
      description: Only rounds of at most this USD amount.
      schema:
        type: number
        minimum: 0
  headers:
    RateLimit-Limit:
      description: Requests this API key may make per minute.
      schema:
        type: integer
    RateLimit-Reset:
      description: Seconds until the current window resets.
      schema:
        type: integer
    X-Credits-Remaining:
      description: USD credits left after this call settles.
      schema:
        type: string
    RateLimit-Remaining:
      description: Requests left in the current one-minute window.
      schema:
        type: integer
    X-Free-Records-Remaining:
      description: Kept for older clients. Always 0 since 2026-10-25, when a one-time signup balance replaced the monthly free records.
      schema:
        type: string
  schemas:
    FundingList:
      type: object
      required:
      - data
      - count
      - next_cursor
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/FundingRecord'
        next_cursor:
          type:
          - string
          - 'null'
          description: Pass back as `cursor` for the next page; null on the last page.
        count:
          type: integer
          description: How many records this page holds.
        coverage:
          type: object
          description: 'Present only when the page holds no records: the window of funding rounds the data covers, so an empty answer is explained.'
          properties:
            complete_from:
              type: string
              format: date
              description: Rounds announced on or after this date are complete.
            partial:
              type: array
              description: Windows where only some rounds are held.
              items:
                type: object
                properties:
                  from:
                    type: string
                    format: date
                  to:
                    type: string
                    format: date
                required:
                - from
                - to
            note:
              type: string
              description: The coverage in one sentence.
          required:
          - complete_from
          - partial
          - note
    FundingRecord:
      type: object
      description: A single funding round. Fields that are unknown for a round are null.
      required:
      - id
      - company_name
      - announced_at
      properties:
        id:
          type: string
          format: uuid
        company_name:
          type: string
        company_domain:
          type:
          - string
          - 'null'
        event_class:
          type:
          - string
          - 'null'
          description: The kind of event, e.g. a funding round.
        round_label:
          type:
          - string
          - 'null'
          description: The human round label, e.g. "Series A".
        round_stage:
          type:
          - string
          - 'null'
          description: The normalised round stage, e.g. "series_a" (the value `round` filters on).
        amount_usd:
          type:
          - number
          - 'null'
          description: The round size in USD, when known.
        amount_original:
          type:
          - number
          - 'null'
          description: The round size in its original currency, when it was not USD.
        currency:
          type:
          - string
          - 'null'
          description: The original currency code for amount_original.
        announced_at:
          type: string
          format: date
          description: The announcement date (the sort key).
        investors:
          type:
          - array
          - 'null'
          items:
            type: string
        lead_investors:
          type:
          - array
          - 'null'
          items:
            type: string
        location:
          type:
          - string
          - 'null'
          description: The headquarters place as the source states it, often a city, a state or a fragment. Null when no place was stated.
        country:
          type:
          - string
          - 'null'
          description: The headquarters country name, such as United States, derived from country_code. Null when country_code is null.
        country_code:
          type:
          - string
          - 'null'
          pattern: ^[A-Z]{2}$
          description: The headquarters country as an ISO 3166-1 alpha-2 code, such as US. Null when the location is unknown, ambiguous or names two countries.
        source_url:
          type:
          - string
          - 'null'
          format: uri
          description: The public announcement a buyer verifies against.
        attributes:
          type:
          - object
          - 'null'
          description: Extra, source-dependent fields.
          additionalProperties: true
        updated_at:
          type:
          - string
          - 'null'
          format: date-time
    Error:
      type: object
      required:
      - error
      description: Every error answers with this shape. `error` is a human-readable message; `code` is a stable machine code when present.
      properties:
        error:
          type: string
        code:
          type: string
          description: A stable error code, e.g. INVALID_FILTER, INVALID_INPUT, INVALID_ID, NOT_FOUND, INSUFFICIENT_CREDITS, WATCHLIST_LIMIT, RATE_LIMITED.
        message:
          type: string
          description: Extra guidance on some errors (401, 402).
        field:
          type: string
          description: The offending field, on some 400s.
        top_up_url:
          type: string
          format: uri
          description: Where to add credits, on a 402.
      additionalProperties: true
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'Your API key as a bearer token: `Authorization: Bearer pa_live_<48 hex>`. Create and manage keys in the dashboard at https://prospectapis.com.'
externalDocs:
  description: API reference and quickstart
  url: https://prospectapis.com/docs