---
type: "firecrawl-provider"
description: "US election and approval polls from the VoteHub Polling API (api.votehub.com, CC BY 4.0): Senate, House, governor and other race polls, the generic congressional ballot, presidential approval and favorability, each with pollster, sponsors, fieldwork dates, sample size, population, answers and VoteHub's internal and partisan flags, so independent polls can be separated from campaign and party-aligned releases."
use_when: "US election and approval polls from the VoteHub Polling API (api.votehub.com, CC BY 4.0): Senate, House, governor and other race polls, the generic congressional ballot, presidential approval and favorability, each with pollster, sponsors, fieldwork dates, sample size, population, answers and VoteHub's internal and partisan flags, so independent polls can be separated from campaign and party-aligned releases."
categories: "Public records"
capabilities: 4
credits_per_call: 5
---
# VoteHub Polling API on Firecrawl Alexandria

US election and approval polls from the VoteHub Polling API (api.votehub.com, CC BY 4.0): Senate, House, governor and other race polls, the generic congressional ballot, presidential approval and favorability, each with pollster, sponsors, fieldwork dates, sample size, population, answers and VoteHub's internal and partisan flags, so independent polls can be separated from campaign and party-aligned releases.

- Categories: Public records
- Category index: [Public records category](https://firecrawl.dev/alexandria/agents/categories/public-records)
- Provider key: `votehub-com`
- Access: Firecrawl credits
- Cost: 5 credits per call

## More

- [Human guide](https://firecrawl.dev/app/alexandria/votehub-com)
- [OpenAPI spec](https://firecrawl.dev/alexandria/agents/providers/votehub-com/openapi.json)

## Capabilities

- [Get poll](https://firecrawl.dev/alexandria/agents/providers/votehub-com/election-polls/get_poll): One VoteHub poll by id with pollster, sponsors, dates, sample, answers, leader margin, internal and partisan flags, the original source URL and CC BY 4.0 attribution.
- [List pollsters](https://firecrawl.dev/alexandria/agents/providers/votehub-com/election-polls/list_pollsters): Distinct pollster names in VoteHub's database, sorted, optionally filtered by a partial name match.
- [List subjects](https://firecrawl.dev/alexandria/agents/providers/votehub-com/election-polls/list_subjects): Every subject VoteHub has polls for (2026 races such as '2026 Texas' or '2026 NY-23', people, institutions) with the poll types each has, plus the full list of poll types. Filter by poll type or a partial subject match.
- [Search polls](https://firecrawl.dev/alexandria/agents/providers/votehub-com/election-polls/search_polls): Search VoteHub's poll database: filter by poll type, subject (race, person or institution, partial match, dashes and spaces interchangeable), pollster (partial match), fieldwork end-date range, minimum sample size, population and sponsorship (independent, partisan, internal). Returns polls sorted by fieldwork end date with each poll's internal and partisan flags, a sponsorship class and the leader's margin, plus counts of independent, partisan and internal polls among all matches, so an answer does not rest on one campaign's own poll. Includes CC BY 4.0 attribution.

## 1. Choose this provider when

US election and approval polls from the VoteHub Polling API (api.votehub.com, CC BY 4.0): Senate, House, governor and other race polls, the generic congressional ballot, presidential approval and favorability, each with pollster, sponsors, fieldwork dates, sample size, population, answers and VoteHub's internal and partisan flags, so independent polls can be separated from campaign and party-aligned releases.

## 2. Minimal request

Call `POST https://api.firecrawl.dev/v2/scrape` with `{ alexandria: { provider, capability, options } }`. For a batch, send `{ alexandria: [...] }` with up to 10 calls.

```json
{
  "provider": "votehub-com",
  "capability": "election-polls/get_poll",
  "options": {
    "poll_id": "us-202pub4033cfe3"
  }
}
```

## 3. Add provider options

Use only the options needed for the task:

- `poll_id` (string, required): VoteHub poll id from search_polls (gen202cygjt8f4fjs, us-202pub4033cfe3). Pattern: ^[A-Za-z0-9/_-]+$. Example: `<poll_id>`

## 4. Request through your preferred interface

### JavaScript

```javascript
const result = await firecrawl.scrape({
  alexandria: {
    provider: "votehub-com",
    capability: "election-polls/get_poll",
    options: {
      poll_id: "us-202pub4033cfe3",
    },
  },
});
```

### Python

```python
result = firecrawl.scrape_alexandria({
  "provider": "votehub-com",
  "capability": "election-polls/get_poll",
  "options": {
    "poll_id": "us-202pub4033cfe3"
  }
})
```

### cURL

```sh
curl https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "alexandria": {
    "provider": "votehub-com",
    "capability": "election-polls/get_poll",
    "options": {
      "poll_id": "us-202pub4033cfe3"
    }
  }
}'
```

### CLI

```sh
firecrawl scrape 'votehub-com/election-polls/get_poll' \
  --options '{"poll_id":"us-202pub4033cfe3"}'
```


### MCP

Call the FCX MCP retrieve tool with this object:

```json
{
  "provider": "votehub-com",
  "capability": "election-polls/get_poll",
  "options": {
    "poll_id": "us-202pub4033cfe3"
  }
}
```

Ask for only the returned fields needed by the task.

## 5. Full request shape

```json
{
  "provider": "votehub-com",
  "capability": "election-polls/get_poll",
  "options": {
    "poll_id": "us-202pub4033cfe3"
  }
}
```

## 6. Response data

The response includes `success`, `provider`, `capability`, `creditsCost` and `data`. This example shows the provider payload in `data`:

```json
{
  "api_url": "https://api.votehub.com/polls/us-202pub4033cfe3",
  "attribution": {
    "license": "CC BY 4.0",
    "license_url": "https://creativecommons.org/licenses/by/4.0/",
    "notice": "Polling data from VoteHub (votehub.com), licensed CC BY 4.0. Credit VoteHub and cite each poll's original source url.",
    "provider": "VoteHub",
    "provider_url": "https://votehub.com/polls/api/"
  },
  "poll": {
    "answers": [
      {
        "choice": "Jared Moskowitz",
        "pct": 47
      },
      {
        "choice": "Scott Singer",
        "pct": 42
      }
    ],
    "created_at": "2026-10-23",
    "end_date": "2026-10-22",
    "id": "us-202pub4033cfe3",
    "internal": false,
    "leader": {
      "choice": "Jared Moskowitz",
      "margin": 5,
      "pct": 47
    },
    "partisan": "DEM",
    "poll_type": "us-representative",
    "pollster": "Public Policy Polling",
    "population": "lv",
    "sample_size": 592,
    "seat_name": "FL-25",
    "source_url": "https://floridapolitics.com/archives/826445-democrats-answer-gop-internal-with-a-poll-showing-jared-moskowitz-up-47-to-42-in-cd-25/",
    "sponsors": [
      "House Majority PAC"
    ],
    "sponsorship": "partisan",
    "sponsorship_note": "Partisan poll: VoteHub flags it as conducted for a DEM-aligned sponsor; weigh it against independent polls.",
    "start_date": "2026-10-21",
    "subject": "2026 FL-25",
    "votehub_url": "https://api.votehub.com/polls/us-202pub4033cfe3"
  }
}
```

## API reference-derived contract

The following capability contract is generated from the same normalized Alexandria API reference exposed in the API spec.

### Get poll

- Capability: `election-polls/get_poll`
- Description: One VoteHub poll by id with pollster, sponsors, dates, sample, answers, leader margin, internal and partisan flags, the original source URL and CC BY 4.0 attribution.
- Instructions: Re-read or cite one poll found through search_polls.
- Cost: 5 credits per call
- Capability file: [Get poll](https://firecrawl.dev/alexandria/agents/providers/votehub-com/election-polls/get_poll)

Accepted options:
- `poll_id` (string, required): VoteHub poll id from search_polls (gen202cygjt8f4fjs, us-202pub4033cfe3). Pattern: ^[A-Za-z0-9/_-]+$. Example: `<poll_id>`

Response schema example:
```json
{
  "api_url": "https://api.votehub.com/polls/us-202pub4033cfe3",
  "attribution": {
    "license": "CC BY 4.0",
    "license_url": "https://creativecommons.org/licenses/by/4.0/",
    "notice": "Polling data from VoteHub (votehub.com), licensed CC BY 4.0. Credit VoteHub and cite each poll's original source url.",
    "provider": "VoteHub",
    "provider_url": "https://votehub.com/polls/api/"
  },
  "poll": {
    "answers": [
      {
        "choice": "Jared Moskowitz",
        "pct": 47
      },
      {
        "choice": "Scott Singer",
        "pct": 42
      }
    ],
    "created_at": "2026-10-23",
    "end_date": "2026-10-22",
    "id": "us-202pub4033cfe3",
    "internal": false,
    "leader": {
      "choice": "Jared Moskowitz",
      "margin": 5,
      "pct": 47
    },
    "partisan": "DEM",
    "poll_type": "us-representative",
    "pollster": "Public Policy Polling",
    "population": "lv",
    "sample_size": 592,
    "seat_name": "FL-25",
    "source_url": "https://floridapolitics.com/archives/826445-democrats-answer-gop-internal-with-a-poll-showing-jared-moskowitz-up-47-to-42-in-cd-25/",
    "sponsors": [
      "House Majority PAC"
    ],
    "sponsorship": "partisan",
    "sponsorship_note": "Partisan poll: VoteHub flags it as conducted for a DEM-aligned sponsor; weigh it against independent polls.",
    "start_date": "2026-10-21",
    "subject": "2026 FL-25",
    "votehub_url": "https://api.votehub.com/polls/us-202pub4033cfe3"
  }
}
```

### List pollsters

- Capability: `election-polls/list_pollsters`
- Description: Distinct pollster names in VoteHub's database, sorted, optionally filtered by a partial name match.
- Instructions: Find the pollster name to pass to search_polls.
- Cost: 5 credits per call
- Capability file: [List pollsters](https://firecrawl.dev/alexandria/agents/providers/votehub-com/election-polls/list_pollsters)

Accepted options:
- `query` (string): Partial, case-insensitive name match. Example: `<query>`

Response schema example:
```json
{
  "attribution": {
    "license": "CC BY 4.0",
    "license_url": "https://creativecommons.org/licenses/by/4.0/",
    "notice": "Polling data from VoteHub (votehub.com), licensed CC BY 4.0. Credit VoteHub and cite each poll's original source url.",
    "provider": "VoteHub",
    "provider_url": "https://votehub.com/polls/api/"
  },
  "pollsters": [
    "Emerson College"
  ],
  "total": 1
}
```

### List subjects

- Capability: `election-polls/list_subjects`
- Description: Every subject VoteHub has polls for (2026 races such as '2026 Texas' or '2026 NY-23', people, institutions) with the poll types each has, plus the full list of poll types. Filter by poll type or a partial subject match.
- Instructions: Find the exact subject string for a race or person before search_polls, or list which 2026 House districts have polls.
- Cost: 5 credits per call
- Capability file: [List subjects](https://firecrawl.dev/alexandria/agents/providers/votehub-com/election-polls/list_subjects)

Accepted options:
- `poll_type` (string): Keep subjects with this poll type (us-representative, us-senator, governor). Pattern: ^[A-Za-z0-9-]{1,40}$. Example: `<poll_type>`
- `query` (string): Partial, case-insensitive subject match; dashes and spaces are interchangeable. Example: `<query>`

Response schema example:
```json
{
  "attribution": {
    "license": "CC BY 4.0",
    "license_url": "https://creativecommons.org/licenses/by/4.0/",
    "notice": "Polling data from VoteHub (votehub.com), licensed CC BY 4.0. Credit VoteHub and cite each poll's original source url.",
    "provider": "VoteHub",
    "provider_url": "https://votehub.com/polls/api/"
  },
  "poll_types": [
    "approval",
    "attorney-general",
    "favorability",
    "generic-ballot",
    "governor",
    "mayor",
    "presidential-primary",
    "proposition-50",
    "us-representative",
    "us-senator"
  ],
  "subjects": [
    {
      "poll_types": [
        "us-senator",
        "governor"
      ],
      "subject": "2026 Texas"
    },
    {
      "poll_types": [
        "us-senator"
      ],
      "subject": "2026 Texas Democratic"
    },
    {
      "poll_types": [
        "us-senator"
      ],
      "subject": "2026 Texas Republican"
    }
  ],
  "total": 3
}
```

### Search polls

- Capability: `election-polls/search_polls`
- Description: Search VoteHub's poll database: filter by poll type, subject (race, person or institution, partial match, dashes and spaces interchangeable), pollster (partial match), fieldwork end-date range, minimum sample size, population and sponsorship (independent, partisan, internal). Returns polls sorted by fieldwork end date with each poll's internal and partisan flags, a sponsorship class and the leader's margin, plus counts of independent, partisan and internal polls among all matches, so an answer does not rest on one campaign's own poll. Includes CC BY 4.0 attribution.
- Instructions: Latest polls for a 2026 race ('2026 Texas' with poll_type us-senator, '2026 FL-25'), the generic ballot, Trump approval or favorability, or one pollster's releases. Use sponsorship=independent to drop campaign and party-aligned polls; use list_subjects to find exact race subjects.
- Cost: 5 credits per call
- Capability file: [Search polls](https://firecrawl.dev/alexandria/agents/providers/votehub-com/election-polls/search_polls)

Accepted options:
- `cursor` (string): next_cursor from the previous page. Pattern: ^[0-9]{1,6}$. Example: `<cursor>`
- `from_date` (string): Fieldwork end on or after this date, YYYY-MM-DD. Pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$. Example: `<from_date>`
- `limit` (number): limit Example: `25`
- `min_sample_size` (number): min_sample_size Example: `10`
- `poll_type` (string): Exact poll type: approval, favorability, generic-ballot, us-senator, us-representative, governor, attorney-general, mayor, presidential-primary, proposition-50. list_subjects returns the current list. Pattern: ^[A-Za-z0-9-]{1,40}$. Example: `<poll_type>`
- `pollster` (string): Partial match on the pollster name (Emerson, YouGov, Siena). Example: `<pollster>`
- `population` (string): lv likely voters, rv registered voters, a adults, v voters. Example: `lv`
- `sort` (string): sort Example: `newest_first`
- `sponsorship` (string): Keep only polls with no internal or partisan flag (independent), only partisan-flagged, only internal, or both flagged kinds (not_independent). flag_counts always covers every match. Example: `all`
- `subject` (string): Partial match on the poll subject: '2026 Texas', '2026 FL-25', 'Donald Trump', 'Congress', '2026' (generic ballot). Primaries share the state prefix ('2026 Texas Democratic'). Example: `<subject>`
- `to_date` (string): Fieldwork end on or before this date, YYYY-MM-DD. Pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$. Example: `<to_date>`

Response schema example:
```json
{
  "api_url": "https://api.votehub.com/polls?subject=2026+Florida&from_date=2026-10-15&to_date=2026-10-25",
  "attribution": {
    "license": "CC BY 4.0",
    "license_url": "https://creativecommons.org/licenses/by/4.0/",
    "notice": "Polling data from VoteHub (votehub.com), licensed CC BY 4.0. Credit VoteHub and cite each poll's original source url.",
    "provider": "VoteHub",
    "provider_url": "https://votehub.com/polls/api/"
  },
  "flag_counts": {
    "independent": 4,
    "internal": 0,
    "partisan_dem": 0,
    "partisan_other": 0,
    "partisan_rep": 2
  },
  "next_cursor": null,
  "polls": [
    {
      "answers": [
        {
          "choice": "Ashley Moody",
          "pct": 48
        },
        {
          "choice": "Angie Nixon",
          "pct": 40
        },
        {
          "choice": "Neil Gillespie",
          "pct": 2
        }
      ],
      "created_at": "2026-10-22",
      "end_date": "2026-10-20",
      "id": "us-202co/bf7a2617",
      "internal": false,
      "leader": {
        "choice": "Ashley Moody",
        "margin": 8,
        "pct": 48
      },
      "partisan": "REP",
      "poll_type": "us-senator",
      "pollster": "co/efficient",
      "population": "lv",
      "sample_size": 1014,
      "seat_name": null,
      "source_url": "https://battlegrounds.coefficient.org/fl/",
      "sponsors": [],
      "sponsorship": "partisan",
      "sponsorship_note": "Partisan poll: VoteHub flags it as conducted for a REP-aligned sponsor; weigh it against independent polls.",
      "start_date": "2026-10-18",
      "subject": "2026 Florida",
      "votehub_url": "https://api.votehub.com/polls/us-202co%2Fbf7a2617"
    },
    {
      "answers": [
        {
          "choice": "Byron Donalds",
          "pct": 49
        },
        {
          "choice": "David Jolly",
          "pct": 40
        }
      ],
      "created_at": "2026-10-22",
      "end_date": "2026-10-20",
      "id": "gov202co/bb858b1c",
      "internal": false,
      "leader": {
        "choice": "Byron Donalds",
        "margin": 9,
        "pct": 49
      },
      "partisan": "REP",
      "poll_type": "governor",
      "pollster": "co/efficient",
      "population": "lv",
      "sample_size": 1014,
      "seat_name": null,
      "source_url": "https://battlegrounds.coefficient.org/fl/",
      "sponsors": [],
      "sponsorship": "partisan",
      "sponsorship_note": "Partisan poll: VoteHub flags it as conducted for a REP-aligned sponsor; weigh it against independent polls.",
      "start_date": "2026-10-18",
      "subject": "2026 Florida",
      "votehub_url": "https://api.votehub.com/polls/gov202co%2Fbb858b1c"
    },
    {
      "answers": [
        {
          "choice": "Ashley Moody",
          "pct": 49
        },
        {
          "choice": "Angie Nixon",
          "pct": 45
        }
      ],
      "created_at": "2026-10-21",
      "end_date": "2026-10-19",
      "id": "us-202unif780f058",
      "internal": false,
      "leader": {
        "choice": "Ashley Moody",
        "margin": 4,
        "pct": 49
      },
      "partisan": null,
      "poll_type": "us-senator",
      "pollster": "University of North Florida",
      "population": "lv",
      "sample_size": 1414,
      "seat_name": null,
      "source_url": "https://static1.squarespace.com/static/6994d571bce3436c60d86870/t/6ad8a5ec13c20404a1f8052b/1792583148294/UNF+PORL+FALL+Statewide+2026+FLLV+-+Press+Release+1021+EMBARGO.pdf",
      "sponsors": [],
      "sponsorship": "independent",
      "sponsorship_note": "No internal or partisan flag from VoteHub.",
      "start_date": "2026-10-12",
      "subject": "2026 Florida",
      "votehub_url": "https://api.votehub.com/polls/us-202unif780f058"
    },
    {
      "answers": [
        {
          "choice": "Byron Donalds",
          "pct": 49
        },
        {
          "choice": "David Jolly",
          "pct": 47
        }
      ],
      "created_at": "2026-10-21",
      "end_date": "2026-10-19",
      "id": "gov202uni6ec2ef24",
      "internal": false,
      "leader": {
        "choice": "Byron Donalds",
        "margin": 2,
        "pct": 49
      },
      "partisan": null,
      "poll_type": "governor",
      "pollster": "University of North Florida",
      "population": "lv",
      "sample_size": 1378,
      "seat_name": null,
      "source_url": "https://static1.squarespace.com/static/6994d571bce3436c60d86870/t/6ad8a5ec13c20404a1f8052b/1792583148294/UNF+PORL+FALL+Statewide+2026+FLLV+-+Press+Release+1021+EMBARGO.pdf",
      "sponsors": [],
      "sponsorship": "independent",
      "sponsorship_note": "No internal or partisan flag from VoteHub.",
      "start_date": "2026-10-12",
      "subject": "2026 Florida",
      "votehub_url": "https://api.votehub.com/polls/gov202uni6ec2ef24"
    },
    {
      "answers": [
        {
          "choice": "Byron Donalds",
          "pct": 51.7
        },
        {
          "choice": "David Jolly",
          "pct": 48.3
        }
      ],
      "created_at": "2026-10-20",
      "end_date": "2026-10-19",
      "id": "gov202act3d1f5d54",
      "internal": false,
      "leader": {
        "choice": "Byron Donalds",
        "margin": 3.4,
        "pct": 51.7
      },
      "partisan": null,
      "poll_type": "governor",
      "pollster": "ActiVote",
      "population": "lv",
      "sample_size": 400,
      "seat_name": null,
      "source_url": "https://www.activote.net/polls/2026/fl-governor/",
      "sponsors": [],
      "sponsorship": "independent",
      "sponsorship_note": "No internal or partisan flag from VoteHub.",
      "start_date": "2026-10-01",
      "subject": "2026 Florida",
      "votehub_url": "https://api.votehub.com/polls/gov202act3d1f5d54"
    },
    {
      "answers": [
        {
          "choice": "Byron Donalds",
          "pct": 50
        },
        {
          "choice": "David Jolly",
          "pct": 42
        }
      ],
      "created_at": "2026-10-20",
      "end_date": "2026-10-15",
      "id": "gov202you47518a20",
      "internal": false,
      "leader": {
        "choice": "Byron Donalds",
        "margin": 8,
        "pct": 50
      },
      "partisan": null,
      "poll_type": "governor",
      "pollster": "YouGov",
      "population": "rv",
      "sample_size": 825,
      "seat_name": null,
      "source_url": "https://www.univision.com/noticias/politica/republicans-lead-florida-as-most-latino-voters-say-immigration-enforcement-has-gone-too-far",
      "sponsors": [
        "N+ Univision"
      ],
      "sponsorship": "independent",
      "sponsorship_note": "No internal or partisan flag from VoteHub.",
      "start_date": "2026-10-02",
      "subject": "2026 Florida",
      "votehub_url": "https://api.votehub.com/polls/gov202you47518a20"
    }
  ],
  "returned": 6,
  "total_matched": 6
}
```
