FiscalNote Legislation API

Access legislative data spanning Congress, all 50 U.S. states, and international jurisdictions.

Operations 2

GET /policynote/v1/legislation FiscalNote List legislation #
GET /policynote/v1/legislation/{legislationId} FiscalNote Get legislation by ID #

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/fiscalnote-legislation-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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

fiscalnote-legislation-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: FiscalNote PolicyNote Legislation API
  description: The FiscalNote PolicyNote API delivers programmatic access to legislative, regulatory, and stakeholder intelligence datasets spanning Congress, all 50 U.S.
  version: '1.0'
  contact:
    name: FiscalNote Support
    url: https://fiscalnote.com/contact
  termsOfService: https://fiscalnote.com/terms
servers:
- url: https://api.fiscalnote.com
  description: Production Server
security:
- apiKey: []
tags:
- name: Legislation
  description: Access legislative data spanning Congress, all 50 U.S. states, and international jurisdictions.
paths:
  /policynote/v1/legislation:
    get:
      operationId: listLegislation
      summary: FiscalNote List legislation
      description: Returns a paginated list of legislation records matching the specified filter criteria. Results include bills, resolutions, and other legislative measures from federal, state, and international jurisdictions.
      tags:
      - Legislation
      parameters:
      - $ref: '#/components/parameters/jurisdictionParam'
      - $ref: '#/components/parameters/sessionParam'
      - $ref: '#/components/parameters/statusParam'
      - $ref: '#/components/parameters/queryParam'
      - $ref: '#/components/parameters/limitParam'
      - $ref: '#/components/parameters/offsetParam'
      - $ref: '#/components/parameters/sortParam'
      - $ref: '#/components/parameters/updatedSinceParam'
      responses:
        '200':
          description: A paginated list of legislation records.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LegislationListResponse'
        '401':
          description: Authentication credentials are missing or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /policynote/v1/legislation/{legislationId}:
    get:
      operationId: getLegislation
      summary: FiscalNote Get legislation by ID
      description: Returns detailed information about a specific piece of legislation including its full text, sponsors, co-sponsors, committee assignments, vote history, and current status.
      tags:
      - Legislation
      parameters:
      - $ref: '#/components/parameters/legislationIdParam'
      responses:
        '200':
          description: Detailed legislation record.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Legislation'
        '401':
          description: Authentication credentials are missing or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Legislation not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    CommitteeRef:
      type: object
      description: A reference to a legislative committee.
      properties:
        id:
          type: string
          description: Unique identifier of the committee.
        name:
          type: string
          description: Name of the committee.
        chamber:
          type: string
          description: Chamber the committee belongs to.
    Sponsor:
      type: object
      description: A sponsor or co-sponsor of a piece of legislation.
      properties:
        id:
          type: string
          description: Unique identifier of the sponsor.
        name:
          type: string
          description: Full name of the sponsor.
        role:
          type: string
          description: Role of the sponsor such as primary or cosponsor.
          enum:
          - primary
          - cosponsor
        party:
          type: string
          description: Political party affiliation.
        jurisdiction:
          type: string
          description: Jurisdiction the sponsor represents.
    LegislationListResponse:
      type: object
      description: Paginated response containing a list of legislation records.
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Legislation'
        pagination:
          $ref: '#/components/schemas/Pagination'
    Error:
      type: object
      description: Error response returned when a request fails.
      properties:
        code:
          type: integer
          description: HTTP status code.
        message:
          type: string
          description: Human-readable error message.
        details:
          type: string
          description: Additional details about the error.
    Pagination:
      type: object
      description: Pagination metadata for list responses.
      properties:
        total:
          type: integer
          description: Total number of records matching the query.
        limit:
          type: integer
          description: Maximum number of records returned per page.
        offset:
          type: integer
          description: Number of records skipped.
        hasMore:
          type: boolean
          description: Indicates whether more records are available.
    Legislation:
      type: object
      description: A legislative measure such as a bill, resolution, or amendment from a federal, state, or international jurisdiction.
      properties:
        id:
          type: string
          description: Unique identifier for the legislation record.
        title:
          type: string
          description: Official title of the legislation.
        shortTitle:
          type: string
          description: Short or popular title of the legislation.
        number:
          type: string
          description: Bill or resolution number.
        type:
          type: string
          description: Type of legislation such as bill, resolution, or amendment.
          enum:
          - bill
          - resolution
          - joint_resolution
          - concurrent_resolution
          - amendment
        jurisdiction:
          type: string
          description: Jurisdiction code where the legislation was introduced.
        session:
          type: string
          description: Legislative session identifier.
        status:
          type: string
          description: Current status of the legislation.
        introducedDate:
          type: string
          format: date
          description: Date the legislation was introduced.
        lastActionDate:
          type: string
          format: date
          description: Date of the most recent action on the legislation.
        lastAction:
          type: string
          description: Description of the most recent action taken on the legislation.
        sponsors:
          type: array
          description: List of sponsors of the legislation.
          items:
            $ref: '#/components/schemas/Sponsor'
        committees:
          type: array
          description: Committees to which the legislation has been referred.
          items:
            $ref: '#/components/schemas/CommitteeRef'
        subjects:
          type: array
          description: Subject tags associated with the legislation.
          items:
            type: string
        summary:
          type: string
          description: Summary text of the legislation.
        fullTextUrl:
          type: string
          format: uri
          description: URL to the full text of the legislation.
        url:
          type: string
          format: uri
          description: URL to the legislation record on the FiscalNote platform.
        createdAt:
          type: string
          format: date-time
          description: Timestamp when the record was created in the system.
        updatedAt:
          type: string
          format: date-time
          description: Timestamp when the record was last updated.
  parameters:
    updatedSinceParam:
      name: updatedSince
      in: query
      required: false
      description: Return only records updated after this ISO 8601 datetime.
      schema:
        type: string
        format: date-time
    statusParam:
      name: status
      in: query
      required: false
      description: Filter by legislation status such as introduced, passed, enacted, or vetoed.
      schema:
        type: string
        enum:
        - introduced
        - in_committee
        - passed_one_chamber
        - passed_both_chambers
        - enacted
        - vetoed
    sortParam:
      name: sort
      in: query
      required: false
      description: Sort order for results. Use field name with optional - prefix for descending order.
      schema:
        type: string
    jurisdictionParam:
      name: jurisdiction
      in: query
      required: false
      description: Filter by jurisdiction code such as US, US-CA, GB, or EU.
      schema:
        type: string
    sessionParam:
      name: session
      in: query
      required: false
      description: Filter by legislative session identifier.
      schema:
        type: string
    limitParam:
      name: limit
      in: query
      required: false
      description: Maximum number of results to return per page.
      schema:
        type: integer
        minimum: 1
        maximum: 100
        default: 25
    legislationIdParam:
      name: legislationId
      in: path
      required: true
      description: The unique identifier of the legislation.
      schema:
        type: string
    offsetParam:
      name: offset
      in: query
      required: false
      description: Number of results to skip for pagination.
      schema:
        type: integer
        minimum: 0
        default: 0
    queryParam:
      name: q
      in: query
      required: false
      description: Full-text search query to filter results.
      schema:
        type: string
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: Authorization
      description: API key provided by FiscalNote. Include in the Authorization header of each request.
externalDocs:
  description: PolicyNote API Documentation
  url: https://fiscalnote.com/products/policynote-api