FiscalNote Officials API

Access government official profiles including legislators, executives, and appointees.

OpenAPI Specification

fiscalnote-officials-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: FiscalNote AppData Bills Officials API
  description: The FiscalNote AppData API provides access to FiscalNote's data on legislation and regulations, both past and present, in the United States and globally. It also exposes organizational data from the FiscalNote platform including issues and labels. Developers can use the API to integrate legislative tracking, regulatory monitoring, and policy analysis capabilities into their own applications and workflows.
  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: Officials
  description: Access government official profiles including legislators, executives, and appointees.
paths:
  /people/v2/officials:
    get:
      operationId: listOfficials
      summary: FiscalNote List government officials
      description: Returns a paginated list of government officials including legislators, executives, and appointees from the United States and international jurisdictions.
      tags:
      - Officials
      parameters:
      - $ref: '#/components/parameters/jurisdictionParam'
      - $ref: '#/components/parameters/chamberParam'
      - $ref: '#/components/parameters/partyParam'
      - $ref: '#/components/parameters/stateParam'
      - $ref: '#/components/parameters/queryParam'
      - $ref: '#/components/parameters/limitParam'
      - $ref: '#/components/parameters/offsetParam'
      - $ref: '#/components/parameters/updatedSinceParam'
      responses:
        '200':
          description: A paginated list of government official records.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OfficialListResponse'
        '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'
  /people/v2/officials/{officialId}:
    get:
      operationId: getOfficial
      summary: FiscalNote Get government official by ID
      description: Returns detailed information about a specific government official including biography, contact details, committee assignments, and political affiliation.
      tags:
      - Officials
      parameters:
      - name: officialId
        in: path
        required: true
        description: The unique identifier of the government official.
        schema:
          type: string
      responses:
        '200':
          description: Detailed government official record.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Official'
        '401':
          description: Authentication credentials are missing or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Official not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  parameters:
    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
    jurisdictionParam:
      name: jurisdiction
      in: query
      required: false
      description: Filter by jurisdiction code such as US, US-CA, GB, or EU.
      schema:
        type: string
    partyParam:
      name: party
      in: query
      required: false
      description: Filter by political party affiliation.
      schema:
        type: string
    queryParam:
      name: q
      in: query
      required: false
      description: Full-text search query to filter results.
      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
    chamberParam:
      name: chamber
      in: query
      required: false
      description: Filter by legislative chamber such as senate or house.
      schema:
        type: string
        enum:
        - senate
        - house
    updatedSinceParam:
      name: updatedSince
      in: query
      required: false
      description: Return only records updated after this ISO 8601 datetime.
      schema:
        type: string
        format: date-time
    stateParam:
      name: state
      in: query
      required: false
      description: Filter by U.S. state abbreviation.
      schema:
        type: string
        minLength: 2
        maxLength: 2
  schemas:
    SocialMedia:
      type: object
      description: Social media profiles for a government official.
      properties:
        twitter:
          type: string
          description: Twitter/X handle.
        facebook:
          type: string
          description: Facebook profile URL or handle.
        youtube:
          type: string
          description: YouTube channel URL.
    Official:
      type: object
      description: A government official including legislators, executives, and appointees.
      properties:
        id:
          type: string
          description: Unique identifier for the official.
        firstName:
          type: string
          description: First name of the official.
        lastName:
          type: string
          description: Last name of the official.
        fullName:
          type: string
          description: Full name of the official.
        title:
          type: string
          description: Official title or position.
        party:
          type: string
          description: Political party affiliation.
        jurisdiction:
          type: string
          description: Jurisdiction the official serves in.
        state:
          type: string
          description: U.S. state if applicable.
        chamber:
          type: string
          description: Legislative chamber if applicable.
        district:
          type: string
          description: District the official represents.
        active:
          type: boolean
          description: Whether the official is currently serving.
        biography:
          type: string
          description: Biographical summary.
        photoUrl:
          type: string
          format: uri
          description: URL to the official's photo.
        contactInfo:
          $ref: '#/components/schemas/ContactInfo'
        socialMedia:
          $ref: '#/components/schemas/SocialMedia'
        url:
          type: string
          format: uri
          description: URL to the official's profile on FiscalNote.
        createdAt:
          type: string
          format: date-time
          description: Timestamp when the record was created.
        updatedAt:
          type: string
          format: date-time
          description: Timestamp when the record was last updated.
    ContactInfo:
      type: object
      description: Contact information for a government official.
      properties:
        email:
          type: string
          format: email
          description: Email address.
        phone:
          type: string
          description: Phone number.
        address:
          type: string
          description: Mailing address.
        website:
          type: string
          format: uri
          description: Official website.
    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.
    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.
    OfficialListResponse:
      type: object
      description: Paginated response containing a list of officials.
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Official'
        pagination:
          $ref: '#/components/schemas/Pagination'
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: Authorization
      description: API key provided by FiscalNote. Include in the Authorization header of each request.
externalDocs:
  description: FiscalNote AppData API Documentation
  url: https://apidocs.fiscalnote.com/apis