openapi: 3.0.2
info:
  description: |
    
    * [More documentation](https://docs.openstates.org/en/latest/api/v3/index.html)
    * [Register for an account](https://openstates.org/accounts/signup/)


    **We are currently working to restore experimental support for committees & events.**

    During this period please note that data is not yet available for all states
    and the exact format of the new endpoints may change slightly depending on user feedback.

    If you have any issues or questions use our
    [GitHub Issues](https://github.com/openstates/issues/issues) to give feedback.
  title: Open States API v3
  version: 2021.11.12
  x-apisguru-categories:
    - open_data
  x-logo:
    url: https://openstates.org/static/images/favicon/apple-touch-icon.78b6cbd31087.png?v=20190106
  x-origin:
    - format: openapi
      url: https://v3.openstates.org/openapi.json
      version: "3.0"
  x-providerName: openstates.org
paths:
  /bills:
    get:
      description: |-
        Search for bills matching given criteria.

        Must either specify a jurisdiction or a full text query (q).  Additional parameters will
        futher restrict bills returned.
      operationId: bills_search_bills_get
      parameters:
        - description: Filter by jurisdiction name or ID.
          in: query
          name: jurisdiction
          required: false
          schema:
            description: Filter by jurisdiction name or ID.
            title: Jurisdiction
            type: string
        - description: Filter by session identifier.
          in: query
          name: session
          required: false
          schema:
            description: Filter by session identifier.
            title: Session
            type: string
        - description: Filter by chamber of origination.
          in: query
          name: chamber
          required: false
          schema:
            description: Filter by chamber of origination.
            title: Chamber
            type: string
        - description: Filter to only include bills with this identifier.
          in: query
          name: identifier
          required: false
          schema:
            default: []
            description: Filter to only include bills with this identifier.
            items:
              type: string
            title: Identifier
            type: array
        - description: Filter by classification, e.g. bill or resolution
          in: query
          name: classification
          required: false
          schema:
            description: Filter by classification, e.g. bill or resolution
            title: Classification
            type: string
        - description: Filter by one or more subjects.
          in: query
          name: subject
          required: false
          schema:
            default: []
            description: Filter by one or more subjects.
            items:
              type: string
            title: Subject
            type: array
        - description: Filter to only include bills with updates since a given date.
          in: query
          name: updated_since
          required: false
          schema:
            description: Filter to only include bills with updates since a given date.
            title: Updated Since
            type: string
        - description: Filter to only include bills created since a given date.
          in: query
          name: created_since
          required: false
          schema:
            description: Filter to only include bills created since a given date.
            title: Created Since
            type: string
        - description: Filter to only include bills with an action since a given date.
          in: query
          name: action_since
          required: false
          schema:
            description: Filter to only include bills with an action since a given date.
            title: Action Since
            type: string
        - description: Desired sort order for bill results.
          in: query
          name: sort
          required: false
          schema:
            allOf:
              - $ref: "#/components/schemas/BillSortOption"
            default: updated_desc
            description: Desired sort order for bill results.
        - description: Filter to only include bills sponsored by a given name or person ID.
          in: query
          name: sponsor
          required: false
          schema:
            description: Filter to only include bills sponsored by a given name or person ID.
            title: Sponsor
            type: string
        - description: Filter matched sponsors to only include particular types of sponsorships.
          in: query
          name: sponsor_classification
          required: false
          schema:
            description: Filter matched sponsors to only include particular types of sponsorships.
            title: Sponsor Classification
            type: string
        - description: Filter by full text search term.
          in: query
          name: q
          required: false
          schema:
            description: Filter by full text search term.
            title: Q
            type: string
        - description: Additional information to include in response.
          in: query
          name: include
          required: false
          schema:
            default: []
            description: Additional information to include in response.
            items:
              $ref: "#/components/schemas/BillInclude"
            type: array
        - in: query
          name: page
          required: false
          schema:
            default: 1
            title: Page
            type: integer
        - in: query
          name: per_page
          required: false
          schema:
            default: 10
            title: Per Page
            type: integer
        - in: query
          name: apikey
          required: false
          schema:
            title: Apikey
            type: string
        - in: header
          name: x-api-key
          required: false
          schema:
            title: X-Api-Key
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BillList"
          description: Successful Response
        "422":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
          description: Validation Error
      summary: Bills Search
      tags:
        - bills
  "/bills/ocd-bill/{openstates_bill_id}":
    get:
      description: Obtain bill information by internal ID in the format ocd-bill/*uuid*.
      operationId: bill_detail_by_id_bills_ocd_bill__openstates_bill_id__get
      parameters:
        - in: path
          name: openstates_bill_id
          required: true
          schema:
            title: Openstates Bill Id
            type: string
        - in: query
          name: include
          required: false
          schema:
            default: []
            items:
              $ref: "#/components/schemas/BillInclude"
            type: array
        - in: query
          name: apikey
          required: false
          schema:
            title: Apikey
            type: string
        - in: header
          name: x-api-key
          required: false
          schema:
            title: X-Api-Key
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Bill"
          description: Successful Response
        "422":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
          description: Validation Error
      summary: Bill Detail By Id
      tags:
        - bills
  "/bills/{jurisdiction}/{session}/{bill_id}":
    get:
      description: Obtain bill information based on (state, session, bill_id).
      operationId: bill_detail_bills__jurisdiction___session___bill_id__get
      parameters:
        - in: path
          name: jurisdiction
          required: true
          schema:
            title: Jurisdiction
            type: string
        - in: path
          name: session
          required: true
          schema:
            title: Session
            type: string
        - in: path
          name: bill_id
          required: true
          schema:
            title: Bill Id
            type: string
        - in: query
          name: include
          required: false
          schema:
            default: []
            items:
              $ref: "#/components/schemas/BillInclude"
            type: array
        - in: query
          name: apikey
          required: false
          schema:
            title: Apikey
            type: string
        - in: header
          name: x-api-key
          required: false
          schema:
            title: X-Api-Key
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Bill"
          description: Successful Response
        "422":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
          description: Validation Error
      summary: Bill Detail
      tags:
        - bills
  /committees:
    get:
      operationId: committee_list_committees_get
      parameters:
        - description: Filter by jurisdiction name or ID.
          in: query
          name: jurisdiction
          required: false
          schema:
            description: Filter by jurisdiction name or ID.
            title: Jurisdiction
            type: string
        - in: query
          name: classification
          required: false
          schema:
            $ref: "#/components/schemas/CommitteeClassification"
        - description: ocd-organization ID of parent committee.
          in: query
          name: parent
          required: false
          schema:
            description: ocd-organization ID of parent committee.
            title: Parent
            type: string
        - description: Chamber of committee, generally upper or lower.
          in: query
          name: chamber
          required: false
          schema:
            allOf:
              - $ref: "#/components/schemas/OrgClassification"
            description: Chamber of committee, generally upper or lower.
        - description: Additional includes for the Committee response.
          in: query
          name: include
          required: false
          schema:
            default: []
            description: Additional includes for the Committee response.
            items:
              $ref: "#/components/schemas/CommitteeInclude"
            type: array
        - in: query
          name: apikey
          required: false
          schema:
            title: Apikey
            type: string
        - in: query
          name: page
          required: false
          schema:
            default: 1
            title: Page
            type: integer
        - in: query
          name: per_page
          required: false
          schema:
            default: 20
            title: Per Page
            type: integer
        - in: header
          name: x-api-key
          required: false
          schema:
            title: X-Api-Key
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CommitteeList"
          description: Successful Response
        "422":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
          description: Validation Error
      summary: Committee List
      tags:
        - committees
  "/committees/{committee_id}":
    get:
      description: Get details on a single committee by ID.
      operationId: committee_detail_committees__committee_id__get
      parameters:
        - in: path
          name: committee_id
          required: true
          schema:
            title: Committee Id
            type: string
        - description: Additional includes for the Committee response.
          in: query
          name: include
          required: false
          schema:
            default: []
            description: Additional includes for the Committee response.
            items:
              $ref: "#/components/schemas/CommitteeInclude"
            type: array
        - in: query
          name: apikey
          required: false
          schema:
            title: Apikey
            type: string
        - in: header
          name: x-api-key
          required: false
          schema:
            title: X-Api-Key
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Committee"
          description: Successful Response
        "422":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
          description: Validation Error
      summary: Committee Detail
      tags:
        - committees
  /events:
    get:
      operationId: event_list_events_get
      parameters:
        - description: Filter by jurisdiction name or ID.
          in: query
          name: jurisdiction
          required: false
          schema:
            description: Filter by jurisdiction name or ID.
            title: Jurisdiction
            type: string
        - description: Return events marked as deleted?
          in: query
          name: deleted
          required: false
          schema:
            default: false
            description: Return events marked as deleted?
            title: Deleted
            type: boolean
        - description: Limit results to those starting before a given datetime.
          in: query
          name: before
          required: false
          schema:
            description: Limit results to those starting before a given datetime.
            title: Before
            type: string
        - description: Limit results to those starting before a given datetime.
          in: query
          name: after
          required: false
          schema:
            description: Limit results to those starting before a given datetime.
            title: After
            type: string
        - description: Limit results to events with associated bills.
          in: query
          name: require_bills
          required: false
          schema:
            default: false
            description: Limit results to events with associated bills.
            title: Require Bills
            type: boolean
        - description: Additional includes for the Event response.
          in: query
          name: include
          required: false
          schema:
            default: []
            description: Additional includes for the Event response.
            items:
              $ref: "#/components/schemas/EventInclude"
            type: array
        - in: query
          name: apikey
          required: false
          schema:
            title: Apikey
            type: string
        - in: query
          name: page
          required: false
          schema:
            default: 1
            title: Page
            type: integer
        - in: query
          name: per_page
          required: false
          schema:
            default: 20
            title: Per Page
            type: integer
        - in: header
          name: x-api-key
          required: false
          schema:
            title: X-Api-Key
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventList"
          description: Successful Response
        "422":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
          description: Validation Error
      summary: Event List
      tags:
        - events
  "/events/{event_id}":
    get:
      description: Get details on a single event by ID.
      operationId: event_detail_events__event_id__get
      parameters:
        - in: path
          name: event_id
          required: true
          schema:
            title: Event Id
            type: string
        - description: Additional includes for the Event response.
          in: query
          name: include
          required: false
          schema:
            default: []
            description: Additional includes for the Event response.
            items:
              $ref: "#/components/schemas/EventInclude"
            type: array
        - in: query
          name: apikey
          required: false
          schema:
            title: Apikey
            type: string
        - in: header
          name: x-api-key
          required: false
          schema:
            title: X-Api-Key
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Event"
          description: Successful Response
        "422":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
          description: Validation Error
      summary: Event Detail
      tags:
        - events
  /jurisdictions:
    get:
      description: Get list of supported Jurisdictions, a Jurisdiction is a state or municipality.
      operationId: jurisdiction_list_jurisdictions_get
      parameters:
        - description: Filter returned jurisdictions by type.
          in: query
          name: classification
          required: false
          schema:
            allOf:
              - $ref: "#/components/schemas/JurisdictionClassification"
            description: Filter returned jurisdictions by type.
        - description: Additional information to include in response.
          in: query
          name: include
          required: false
          schema:
            default: []
            description: Additional information to include in response.
            items:
              $ref: "#/components/schemas/JurisdictionInclude"
            type: array
        - in: query
          name: page
          required: false
          schema:
            default: 1
            title: Page
            type: integer
        - in: query
          name: per_page
          required: false
          schema:
            default: 52
            title: Per Page
            type: integer
        - in: query
          name: apikey
          required: false
          schema:
            title: Apikey
            type: string
        - in: header
          name: x-api-key
          required: false
          schema:
            title: X-Api-Key
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/JurisdictionList"
          description: Successful Response
        "422":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
          description: Validation Error
      summary: Jurisdiction List
      tags:
        - jurisdictions
  "/jurisdictions/{jurisdiction_id}":
    get:
      description: Get details on a single Jurisdiction (e.g. state or municipality).
      operationId: jurisdiction_detail_jurisdictions__jurisdiction_id__get
      parameters:
        - in: path
          name: jurisdiction_id
          required: true
          schema:
            title: Jurisdiction Id
            type: string
        - description: Additional includes for the Jurisdiction response.
          in: query
          name: include
          required: false
          schema:
            default: []
            description: Additional includes for the Jurisdiction response.
            items:
              $ref: "#/components/schemas/JurisdictionInclude"
            type: array
        - in: query
          name: apikey
          required: false
          schema:
            title: Apikey
            type: string
        - in: header
          name: x-api-key
          required: false
          schema:
            title: X-Api-Key
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Jurisdiction"
          description: Successful Response
        "422":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
          description: Validation Error
      summary: Jurisdiction Detail
      tags:
        - jurisdictions
  /metrics:
    get:
      description: Endpoint that serves Prometheus metrics.
      operationId: metrics_metrics_get
      responses:
        "200":
          content:
            application/json:
              schema: {}
          description: Successful Response
      summary: Metrics
  /people:
    get:
      description: |-
        Get list of people matching selected criteria.

        Must provide either **jurisdiction**, **name**, or one or more **id** parameters.
      operationId: people_search_people_get
      parameters:
        - description: Filter by jurisdiction name or id.
          in: query
          name: jurisdiction
          required: false
          schema:
            description: Filter by jurisdiction name or id.
            title: Jurisdiction
            type: string
        - description: Filter by name, case-insensitive match.
          in: query
          name: name
          required: false
          schema:
            description: Filter by name, case-insensitive match.
            title: Name
            type: string
        - description: Filter by id, can be specified multiple times for multiple people.
          in: query
          name: id
          required: false
          schema:
            default: []
            description: Filter by id, can be specified multiple times for multiple people.
            items:
              type: string
            title: Id
            type: array
        - description: Filter by current role.
          in: query
          name: org_classification
          required: false
          schema:
            allOf:
              - $ref: "#/components/schemas/OrgClassification"
            description: Filter by current role.
        - description: Filter by district name.
          in: query
          name: district
          required: false
          schema:
            description: Filter by district name.
            title: District
            type: string
        - description: Additional information to include in response.
          in: query
          name: include
          required: false
          schema:
            default: []
            description: Additional information to include in response.
            items:
              $ref: "#/components/schemas/PersonInclude"
            type: array
        - in: query
          name: page
          required: false
          schema:
            default: 1
            title: Page
            type: integer
        - in: query
          name: per_page
          required: false
          schema:
            default: 10
            title: Per Page
            type: integer
        - in: query
          name: apikey
          required: false
          schema:
            title: Apikey
            type: string
        - in: header
          name: x-api-key
          required: false
          schema:
            title: X-Api-Key
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PersonList"
          description: Successful Response
        "422":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
          description: Validation Error
      summary: People Search
      tags:
        - people
  /people.geo:
    get:
      description: |-
        Get list of people currently representing a given location.

        **Note:** Currently limited to state legislators and US Congress.  Governors & mayors are not included.
      operationId: people_geo_people_geo_get
      parameters:
        - description: Latitude of point.
          in: query
          name: lat
          required: true
          schema:
            description: Latitude of point.
            title: Lat
            type: number
        - description: Longitude of point.
          in: query
          name: lng
          required: true
          schema:
            description: Longitude of point.
            title: Lng
            type: number
        - description: Additional information to include in the response.
          in: query
          name: include
          required: false
          schema:
            default: []
            description: Additional information to include in the response.
            items:
              $ref: "#/components/schemas/PersonInclude"
            type: array
        - in: query
          name: apikey
          required: false
          schema:
            title: Apikey
            type: string
        - in: header
          name: x-api-key
          required: false
          schema:
            title: X-Api-Key
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PersonList"
          description: Successful Response
        "422":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HTTPValidationError"
          description: Validation Error
      summary: People Geo
      tags:
        - people
components:
  schemas:
    AltIdentifier:
      properties:
        identifier:
          example: NCL000123
          title: Identifier
          type: string
        scheme:
          example: legacy_openstates
          title: Scheme
          type: string
      required:
        - identifier
        - scheme
      title: AltIdentifier
      type: object
    AltName:
      properties:
        name:
          example: Auggie
          title: Name
          type: string
        note:
          example: nickname
          title: Note
          type: string
      required:
        - name
        - note
      title: AltName
      type: object
    Bill:
      properties:
        abstracts:
          items:
            $ref: "#/components/schemas/BillAbstract"
          title: Abstracts
          type: array
        actions:
          items:
            $ref: "#/components/schemas/BillAction"
          title: Actions
          type: array
        classification:
          default: []
          example:
            - resolution
          items:
            type: string
          title: Classification
          type: array
        created_at:
          format: date-time
          title: Created At
          type: string
        documents:
          items:
            $ref: "#/components/schemas/BillDocumentOrVersion"
          title: Documents
          type: array
        extras:
          default: {}
          example: {}
          title: Extras
          type: object
        first_action_date:
          default: ""
          example: 2020-01-01
          title: First Action Date
          type: string
        from_organization:
          $ref: "#/components/schemas/Organization"
        id:
          example: ocd-bill/f0049138-1ad8-4506-a2a4-f4dd1251bbba
          title: Id
          type: string
        identifier:
          example: SB 113
          title: Identifier
          type: string
        jurisdiction:
          $ref: "#/components/schemas/CompactJurisdiction"
        latest_action_date:
          default: ""
          example: 2020-02-01
          title: Latest Action Date
          type: string
        latest_action_description:
          default: ""
          example: Introduced in House
          title: Latest Action Description
          type: string
        latest_passage_date:
          default: ""
          example: 2020-03-01
          title: Latest Passage Date
          type: string
        openstates_url:
          example: https://openstates.org/nc/bills/2019/HB1105/
          title: Openstates Url
          type: string
        other_identifiers:
          items:
            $ref: "#/components/schemas/BillIdentifier"
          title: Other Identifiers
          type: array
        other_titles:
          items:
            $ref: "#/components/schemas/BillTitle"
          title: Other Titles
          type: array
        related_bills:
          items:
            $ref: "#/components/schemas/RelatedBill"
          title: Related Bills
          type: array
        session:
          example: "2020"
          title: Session
          type: string
        sources:
          items:
            $ref: "#/components/schemas/Link"
          title: Sources
          type: array
        sponsorships:
          items:
            $ref: "#/components/schemas/BillSponsorship"
          title: Sponsorships
          type: array
        subject:
          default: []
          example:
            - SCORPIONS
            - SYMBOLS
          items:
            type: string
          title: Subject
          type: array
        title:
          example: Adopting a State Scorpion
          title: Title
          type: string
        updated_at:
          format: date-time
          title: Updated At
          type: string
        versions:
          items:
            $ref: "#/components/schemas/BillDocumentOrVersion"
          title: Versions
          type: array
        votes:
          items:
            $ref: "#/components/schemas/VoteEvent"
          title: Votes
          type: array
      required:
        - id
        - session
        - jurisdiction
        - from_organization
        - identifier
        - title
        - created_at
        - updated_at
        - openstates_url
      title: Bill
      type: object
    BillAbstract:
      properties:
        abstract:
          example: This bill designates a new state arachnid.
          title: Abstract
          type: string
        note:
          example: house abstract
          title: Note
          type: string
      required:
        - abstract
        - note
      title: BillAbstract
      type: object
    BillAction:
      properties:
        classification:
          example:
            - passed
          items:
            type: string
          title: Classification
          type: array
        date:
          example: 2020-03-14
          title: Date
          type: string
        description:
          example: Passed 1st Reading
          title: Description
          type: string
        order:
          title: Order
          type: integer
        organization:
          $ref: "#/components/schemas/Organization"
      required:
        - organization
        - description
        - date
        - classification
        - order
      title: BillAction
      type: object
    BillDocumentLink:
      properties:
        media_type:
          example: application/pdf
          title: Media Type
          type: string
        url:
          example: https://example.com/doc.pdf
          title: Url
          type: string
      required:
        - url
        - media_type
      title: BillDocumentLink
      type: object
    BillDocumentOrVersion:
      properties:
        date:
          example: 2020-10-01
          title: Date
          type: string
        links:
          items:
            $ref: "#/components/schemas/BillDocumentLink"
          title: Links
          type: array
        note:
          example: Latest Version
          title: Note
          type: string
      required:
        - note
        - date
        - links
      title: BillDocumentOrVersion
      type: object
    BillIdentifier:
      properties:
        identifier:
          example: HB 74
          title: Identifier
          type: string
      required:
        - identifier
      title: BillIdentifier
      type: object
    BillInclude:
      description: An enumeration.
      enum:
        - sponsorships
        - abstracts
        - other_titles
        - other_identifiers
        - actions
        - sources
        - documents
        - versions
        - votes
        - related_bills
      title: BillInclude
      type: string
    BillList:
      properties:
        pagination:
          $ref: "#/components/schemas/PaginationMeta"
        results:
          items:
            $ref: "#/components/schemas/Bill"
          title: Results
          type: array
      required:
        - results
        - pagination
      title: BillList
      type: object
    BillSortOption:
      description: An enumeration.
      enum:
        - updated_asc
        - updated_desc
        - first_action_asc
        - first_action_desc
        - latest_action_asc
        - latest_action_desc
      title: BillSortOption
      type: string
    BillSponsorship:
      properties:
        classification:
          example: primary
          title: Classification
          type: string
        entity_type:
          example: person
          title: Entity Type
          type: string
        name:
          example: JONES
          title: Name
          type: string
        organization:
          allOf:
            - $ref: "#/components/schemas/Organization"
          title: Organization
        person:
          $ref: "#/components/schemas/CompactPerson"
        primary:
          title: Primary
          type: boolean
      required:
        - name
        - entity_type
        - primary
        - classification
      title: BillSponsorship
      type: object
    BillTitle:
      properties:
        note:
          example: short title
          title: Note
          type: string
        title:
          example: Designating the scorpion as the state arachnid.
          title: Title
          type: string
      required:
        - title
        - note
      title: BillTitle
      type: object
    Chamber:
      properties:
        classification:
          example: legislature
          title: Classification
          type: string
        districts:
          items:
            $ref: "#/components/schemas/Post"
          title: Districts
          type: array
        id:
          example: ocd-organization/32aab083-d7a0-44e0-9b95-a7790c542605
          title: Id
          type: string
        name:
          example: North Carolina General Assembly
          title: Name
          type: string
      required:
        - id
        - name
        - classification
      title: Chamber
      type: object
    Committee:
      properties:
        classification:
          $ref: "#/components/schemas/CommitteeClassification"
        extras:
          example:
            room: Room 4B
          title: Extras
          type: object
        id:
          example: ocd-organization/aabbbbcc-dddd-eeee-ffff-0123456789ab
          title: Id
          type: string
        links:
          items:
            $ref: "#/components/schemas/Link"
          title: Links
          type: array
        memberships:
          items:
            $ref: "#/components/schemas/CommitteeMembership"
          title: Memberships
          type: array
        name:
          example: Health & Public Services
          title: Name
          type: string
        other_names:
          items:
            $ref: "#/components/schemas/AltName"
          title: Other Names
          type: array
        parent_id:
          example: ocd-organization/aabbbbcc-dddd-eeee-ffff-999988887777
          title: Parent Id
          type: string
        sources:
          items:
            $ref: "#/components/schemas/Link"
          title: Sources
          type: array
      required:
        - id
        - name
        - classification
        - parent_id
        - extras
      title: Committee
      type: object
    CommitteeClassification:
      description: An enumeration.
      enum:
        - committee
        - subcommittee
      title: CommitteeClassification
      type: string
    CommitteeInclude:
      description: An enumeration.
      enum:
        - memberships
        - links
        - sources
      title: CommitteeInclude
      type: string
    CommitteeList:
      properties:
        pagination:
          $ref: "#/components/schemas/PaginationMeta"
        results:
          items:
            $ref: "#/components/schemas/Committee"
          title: Results
          type: array
      required:
        - results
        - pagination
      title: CommitteeList
      type: object
    CommitteeMembership:
      properties:
        person:
          $ref: "#/components/schemas/CompactPerson"
        person_name:
          title: Person Name
          type: string
        role:
          title: Role
          type: string
      required:
        - person_name
        - role
      title: CommitteeMembership
      type: object
    CompactBill:
      properties:
        id:
          example: ocd-bill/12345678-0000-1111-2222-333344445555
          title: Id
          type: string
        identifier:
          title: Identifier
          type: string
        session:
          title: Session
          type: string
        title:
          title: Title
          type: string
      required:
        - id
        - session
        - identifier
        - title
      title: CompactBill
      type: object
    CompactJurisdiction:
      properties:
        classification:
          allOf:
            - $ref: "#/components/schemas/JurisdictionClassification"
          example: state
        id:
          example: ocd-jurisdiction/country:us/state:nc/government
          title: Id
          type: string
        name:
          example: North Carolina
          title: Name
          type: string
      required:
        - id
        - name
        - classification
      title: CompactJurisdiction
      type: object
    CompactPerson:
      properties:
        current_role:
          $ref: "#/components/schemas/CurrentRole"
        id:
          example: ocd-person/adb58f21-f2fd-4830-85b6-f490b0867d14
          title: Id
          type: string
        name:
          example: Angela Augusta
          title: Name
          type: string
        party:
          example: Democratic
          title: Party
          type: string
      required:
        - id
        - name
        - party
      title: CompactPerson
      type: object
    CompactVoteEvent:
      properties:
        id:
          example: ocd-vote/12345678-0000-1111-2222-333344445555
          title: Id
          type: string
        motion_text:
          example: Shall the bill be passed?
          title: Motion Text
          type: string
      required:
        - id
        - motion_text
      title: CompactVoteEvent
      type: object
    CurrentRole:
      properties:
        district:
          anyOf:
            - type: string
            - type: integer
          default: ""
          example: 3
          title: District
        division_id:
          default: ""
          example: ocd-division/country:us/state:nc/sldu:3
          title: Division Id
          type: string
        org_classification:
          allOf:
            - $ref: "#/components/schemas/OrgClassification"
          example: upper
        title:
          example: Senator
          title: Title
          type: string
      required:
        - title
        - org_classification
      title: CurrentRole
      type: object
    DataExport:
      properties:
        created_at:
          format: date-time
          title: Created At
          type: string
        data_type:
          title: Data Type
          type: string
        updated_at:
          format: date-time
          title: Updated At
          type: string
        url:
          title: Url
          type: string
      required:
        - created_at
        - updated_at
        - data_type
        - url
      title: DataExport
      type: object
    Event:
      properties:
        agenda:
          items:
            $ref: "#/components/schemas/EventAgendaItem"
          title: Agenda
          type: array
        all_day:
          title: All Day
          type: boolean
        classification:
          title: Classification
          type: string
        deleted:
          title: Deleted
          type: boolean
        description:
          title: Description
          type: string
        documents:
          items:
            $ref: "#/components/schemas/EventDocument"
          title: Documents
          type: array
        end_date:
          title: End Date
          type: string
        id:
          title: Id
          type: string
        jurisdiction:
          $ref: "#/components/schemas/CompactJurisdiction"
        links:
          items:
            $ref: "#/components/schemas/Link"
          title: Links
          type: array
        location:
          $ref: "#/components/schemas/EventLocation"
        media:
          items:
            $ref: "#/components/schemas/EventMedia"
          title: Media
          type: array
        name:
          title: Name
          type: string
        participants:
          items:
            $ref: "#/components/schemas/EventParticipant"
          title: Participants
          type: array
        sources:
          items:
            $ref: "#/components/schemas/Link"
          title: Sources
          type: array
        start_date:
          title: Start Date
          type: string
        status:
          title: Status
          type: string
        upstream_id:
          title: Upstream Id
          type: string
      required:
        - id
        - name
        - jurisdiction
        - description
        - classification
        - start_date
        - end_date
        - all_day
        - status
        - upstream_id
        - deleted
      title: Event
      type: object
    EventAgendaItem:
      properties:
        classification:
          items:
            type: string
          title: Classification
          type: array
        description:
          title: Description
          type: string
        extras:
          title: Extras
          type: object
        media:
          items:
            $ref: "#/components/schemas/EventMedia"
          title: Media
          type: array
        notes:
          items:
            type: string
          title: Notes
          type: array
        order:
          title: Order
          type: integer
        related_entities:
          items:
            $ref: "#/components/schemas/EventRelatedEntity"
          title: Related Entities
          type: array
        subjects:
          items:
            type: string
          title: Subjects
          type: array
      required:
        - description
        - classification
        - order
        - subjects
        - notes
        - extras
        - related_entities
        - media
      title: EventAgendaItem
      type: object
    EventDocument:
      properties:
        classification:
          title: Classification
          type: string
        date:
          title: Date
          type: string
        links:
          items:
            $ref: "#/components/schemas/Link"
          title: Links
          type: array
        note:
          title: Note
          type: string
      required:
        - note
        - date
        - classification
        - links
      title: EventDocument
      type: object
    EventInclude:
      description: An enumeration.
      enum:
        - links
        - sources
        - media
        - documents
        - participants
        - agenda
      title: EventInclude
      type: string
    EventList:
      properties:
        pagination:
          $ref: "#/components/schemas/PaginationMeta"
        results:
          items:
            $ref: "#/components/schemas/Event"
          title: Results
          type: array
      required:
        - results
        - pagination
      title: EventList
      type: object
    EventLocation:
      properties:
        name:
          title: Name
          type: string
        url:
          title: Url
          type: string
      required:
        - name
        - url
      title: EventLocation
      type: object
    EventMedia:
      properties:
        classification:
          title: Classification
          type: string
        date:
          title: Date
          type: string
        links:
          items:
            $ref: "#/components/schemas/Link"
          title: Links
          type: array
        note:
          title: Note
          type: string
        offset:
          title: Offset
          type: integer
      required:
        - note
        - date
        - offset
        - classification
        - links
      title: EventMedia
      type: object
    EventParticipant:
      properties:
        entity_type:
          example: person
          title: Entity Type
          type: string
        name:
          example: JONES
          title: Name
          type: string
        note:
          title: Note
          type: string
        organization:
          allOf:
            - $ref: "#/components/schemas/Organization"
          title: Organization
        person:
          $ref: "#/components/schemas/CompactPerson"
      required:
        - note
        - name
        - entity_type
      title: EventParticipant
      type: object
    EventRelatedEntity:
      properties:
        bill:
          $ref: "#/components/schemas/CompactBill"
        entity_type:
          example: person
          title: Entity Type
          type: string
        name:
          example: JONES
          title: Name
          type: string
        note:
          title: Note
          type: string
        organization:
          allOf:
            - $ref: "#/components/schemas/Organization"
          title: Organization
        person:
          $ref: "#/components/schemas/CompactPerson"
        vote:
          $ref: "#/components/schemas/CompactVoteEvent"
      required:
        - note
        - name
        - entity_type
      title: EventRelatedEntity
      type: object
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: "#/components/schemas/ValidationError"
          title: Detail
          type: array
      title: HTTPValidationError
      type: object
    Jurisdiction:
      properties:
        classification:
          allOf:
            - $ref: "#/components/schemas/JurisdictionClassification"
          example: state
        division_id:
          default: ""
          example: ocd-division/country:us/state:nc
          title: Division Id
          type: string
        id:
          example: ocd-jurisdiction/country:us/state:nc/government
          title: Id
          type: string
        latest_bill_update:
          format: date-time
          title: Latest Bill Update
          type: string
        latest_people_update:
          format: date-time
          title: Latest People Update
          type: string
        latest_runs:
          items:
            $ref: "#/components/schemas/RunPlan"
          title: Latest Runs
          type: array
        legislative_sessions:
          items:
            $ref: "#/components/schemas/LegislativeSession"
          title: Legislative Sessions
          type: array
        name:
          example: North Carolina
          title: Name
          type: string
        organizations:
          items:
            $ref: "#/components/schemas/Chamber"
          title: Organizations
          type: array
        url:
          example: https://nc.gov
          title: Url
          type: string
      required:
        - id
        - name
        - classification
        - url
        - latest_bill_update
        - latest_people_update
      title: Jurisdiction
      type: object
    JurisdictionClassification:
      description: An enumeration.
      enum:
        - state
        - municipality
        - country
      title: JurisdictionClassification
      type: string
    JurisdictionInclude:
      description: An enumeration.
      enum:
        - organizations
        - legislative_sessions
        - latest_runs
      title: JurisdictionInclude
      type: string
    JurisdictionList:
      properties:
        pagination:
          $ref: "#/components/schemas/PaginationMeta"
        results:
          items:
            $ref: "#/components/schemas/Jurisdiction"
          title: Results
          type: array
      required:
        - results
        - pagination
      title: JurisdictionList
      type: object
    LegislativeSession:
      properties:
        classification:
          title: Classification
          type: string
        downloads:
          items:
            $ref: "#/components/schemas/DataExport"
          title: Downloads
          type: array
        end_date:
          title: End Date
          type: string
        identifier:
          title: Identifier
          type: string
        name:
          title: Name
          type: string
        start_date:
          title: Start Date
          type: string
      required:
        - identifier
        - name
        - classification
        - start_date
        - end_date
      title: LegislativeSession
      type: object
    Link:
      properties:
        note:
          example: homepage
          title: Note
          type: string
        url:
          example: https://example.com/
          title: Url
          type: string
      required:
        - url
        - note
      title: Link
      type: object
    Office:
      properties:
        address:
          example: 212 Maple Lane; Raleigh NC; 27526
          title: Address
          type: string
        classification:
          example: capitol
          title: Classification
          type: string
        fax:
          example: 919-555-1234
          title: Fax
          type: string
        name:
          example: District Office
          title: Name
          type: string
        voice:
          example: 919-555-0064
          title: Voice
          type: string
      required:
        - name
      title: Office
      type: object
    OrgClassification:
      description: An enumeration.
      enum:
        - legislature
        - executive
        - lower
        - upper
        - government
      title: OrgClassification
      type: string
    Organization:
      properties:
        classification:
          example: legislature
          title: Classification
          type: string
        id:
          example: ocd-organization/32aab083-d7a0-44e0-9b95-a7790c542605
          title: Id
          type: string
        name:
          example: North Carolina General Assembly
          title: Name
          type: string
      required:
        - id
        - name
        - classification
      title: Organization
      type: object
    PaginationMeta:
      properties:
        max_page:
          example: 3
          title: Max Page
          type: integer
        page:
          example: 1
          title: Page
          type: integer
        per_page:
          example: 20
          title: Per Page
          type: integer
        total_items:
          example: 52
          title: Total Items
          type: integer
      required:
        - per_page
        - page
        - max_page
        - total_items
      title: PaginationMeta
      type: object
    Person:
      properties:
        birth_date:
          example: 1960-05-04
          title: Birth Date
          type: string
        created_at:
          format: date-time
          title: Created At
          type: string
        current_role:
          $ref: "#/components/schemas/CurrentRole"
        death_date:
          example: 2019-04-10
          title: Death Date
          type: string
        email:
          example: aperson@example.com
          title: Email
          type: string
        extras:
          example:
            profession: Doctor
          title: Extras
          type: object
        family_name:
          example: Augusta
          title: Family Name
          type: string
        gender:
          example: female
          title: Gender
          type: string
        given_name:
          example: Angela
          title: Given Name
          type: string
        id:
          example: ocd-person/adb58f21-f2fd-4830-85b6-f490b0867d14
          title: Id
          type: string
        image:
          example: https://example.com/ncimg/3.png
          title: Image
          type: string
        jurisdiction:
          $ref: "#/components/schemas/CompactJurisdiction"
        links:
          items:
            $ref: "#/components/schemas/Link"
          title: Links
          type: array
        name:
          example: Angela Augusta
          title: Name
          type: string
        offices:
          items:
            $ref: "#/components/schemas/Office"
          title: Offices
          type: array
        openstates_url:
          example: https://openstates.org/person/amos-l-quick-iii-28NRPPfJA6FGVl9RrjpKjl/
          title: Openstates Url
          type: string
        other_identifiers:
          items:
            $ref: "#/components/schemas/AltIdentifier"
          title: Other Identifiers
          type: array
        other_names:
          items:
            $ref: "#/components/schemas/AltName"
          title: Other Names
          type: array
        party:
          example: Democratic
          title: Party
          type: string
        sources:
          items:
            $ref: "#/components/schemas/Link"
          title: Sources
          type: array
        updated_at:
          format: date-time
          title: Updated At
          type: string
      required:
        - id
        - name
        - party
        - jurisdiction
        - given_name
        - family_name
        - image
        - email
        - gender
        - birth_date
        - death_date
        - extras
        - created_at
        - updated_at
        - openstates_url
      title: Person
      type: object
    PersonInclude:
      description: An enumeration.
      enum:
        - other_names
        - other_identifiers
        - links
        - sources
        - offices
      title: PersonInclude
      type: string
    PersonList:
      properties:
        pagination:
          $ref: "#/components/schemas/PaginationMeta"
        results:
          items:
            $ref: "#/components/schemas/Person"
          title: Results
          type: array
      required:
        - results
        - pagination
      title: PersonList
      type: object
    PersonVote:
      properties:
        option:
          example: no
          title: Option
          type: string
        voter:
          $ref: "#/components/schemas/CompactPerson"
        voter_name:
          example: Wu
          title: Voter Name
          type: string
      required:
        - option
        - voter_name
      title: PersonVote
      type: object
    Post:
      properties:
        division_id:
          example: ocd-division/country:us/state:mn/sldu:4
          title: Division Id
          type: string
        label:
          example: "2"
          title: Label
          type: string
        maximum_memberships:
          example: 1
          title: Maximum Memberships
          type: integer
        role:
          example: Senator
          title: Role
          type: string
      required:
        - label
        - role
        - division_id
        - maximum_memberships
      title: Post
      type: object
    RelatedBill:
      properties:
        identifier:
          example: HB 123
          title: Identifier
          type: string
        legislative_session:
          example: 2022S1
          title: Legislative Session
          type: string
        relation_type:
          example: companion
          title: Relation Type
          type: string
      required:
        - identifier
        - legislative_session
        - relation_type
      title: RelatedBill
      type: object
    RunPlan:
      properties:
        end_time:
          format: date-time
          title: End Time
          type: string
        start_time:
          format: date-time
          title: Start Time
          type: string
        success:
          title: Success
          type: boolean
      required:
        - success
        - start_time
        - end_time
      title: RunPlan
      type: object
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          title: Location
          type: array
        msg:
          title: Message
          type: string
        type:
          title: Error Type
          type: string
      required:
        - loc
        - msg
        - type
      title: ValidationError
      type: object
    VoteCount:
      properties:
        option:
          example: yes
          title: Option
          type: string
        value:
          example: 48
          title: Value
          type: integer
      required:
        - option
        - value
      title: VoteCount
      type: object
    VoteEvent:
      properties:
        counts:
          items:
            $ref: "#/components/schemas/VoteCount"
          title: Counts
          type: array
        extras:
          title: Extras
          type: object
        id:
          title: Id
          type: string
        identifier:
          example: "HV #3312"
          title: Identifier
          type: string
        motion_classification:
          default: []
          example:
            - passage
          items:
            type: string
          title: Motion Classification
          type: array
        motion_text:
          example: Shall the bill be passed?
          title: Motion Text
          type: string
        organization:
          $ref: "#/components/schemas/Organization"
        result:
          example: pass
          title: Result
          type: string
        sources:
          items:
            $ref: "#/components/schemas/Link"
          title: Sources
          type: array
        start_date:
          example: 2020-09-18
          title: Start Date
          type: string
        votes:
          items:
            $ref: "#/components/schemas/PersonVote"
          title: Votes
          type: array
      required:
        - id
        - motion_text
        - start_date
        - result
        - identifier
        - extras
        - organization
        - votes
        - counts
        - sources
      title: VoteEvent
      type: object
