Resource Catalog

May 21, 2026 · View on GitHub

This document is the index of all resource types searchable via the Query Service, organized by the service that indexes them.

Each service owns its indexer contract — the authoritative reference for data schemas, tags, access control, and parent references for its resource types. When a resource type changes, only that service's contract needs updating.


Services

ServiceResource TypesIndexer Contract
lfx-v2-project-serviceProject, Project Settingsindexer-contract.md
lfx-v2-committee-serviceCommittee, Committee Settings, Committee Member, Committee Invite, Committee Application, Committee Link, Committee Link Folderindexer-contract.md
lfx-v2-meeting-serviceV1 Meeting, V1 Meeting Registrant, V1 Meeting RSVP, V1 Meeting Attachment, V1 Past Meeting, V1 Past Meeting Participant, V1 Past Meeting Recording, V1 Past Meeting Transcript, V1 Past Meeting Summary, V1 Past Meeting Attachmentindexer-contract.md
lfx-v2-mailing-list-serviceGroups.io Service, Groups.io Service Settings, Groups.io Mailing List, Groups.io Mailing List Settings, Groups.io Member, Groups.io Artifactindexer-contract.md
lfx-v2-voting-serviceVote, Vote Responseindexer-contract.md
lfx-v2-survey-serviceSurvey, Survey Response, Survey Templateindexer-contract.md
lfx-v2-member-serviceB2B Org, Project Membership, Key Contactindexer-contract.md

Adding a New Service

When a new service starts indexing data:

  1. Add a docs/indexer-contract.md to that service's repo following the committee-service pattern
  2. Add a row to the table above with the service name, resource types, and a link to its contract

Common Query Patterns

The examples below use /query/resources. All requests require v=1 and a valid JWT token.

Find all committees for a project

GET /query/resources?v=1&type=committee&tags=project_uid:<project_uid>

Find all members of a committee

GET /query/resources?v=1&type=committee_member&tags=committee_uid:<committee_uid>

Find voting members of a committee

GET /query/resources?v=1&type=committee_member&tags_all=committee_uid:<committee_uid>&tags_all=voting_status:Voting Rep

Find child committees of a parent committee

GET /query/resources?v=1&type=committee&tags=parent_uid:<parent_uid>

Find members by organization

GET /query/resources?v=1&type=committee_member&tags=organization_name:<org_name>

Advanced filtering with CEL

# Find public committees in a specific category
GET /query/resources?v=1&type=committee&tags=project_uid:<project_uid>&cel_filter=data.category=="TSC"&&data.public==true

Find a project by slug

GET /query/resources?v=1&type=project&tags=project_slug:<slug>

Find all meetings for a project

GET /query/resources?v=1&type=v1_meeting&tags=project_uid:<project_uid>

Find past meetings for an active meeting (all occurrences)

GET /query/resources?v=1&type=v1_past_meeting&tags=meeting_id:<meeting_id>

Find participants of a past meeting

GET /query/resources?v=1&type=v1_past_meeting_participant&tags=meeting_and_occurrence_id:<meeting_and_occurrence_id>

Find attendees of a past meeting

GET /query/resources?v=1&type=v1_past_meeting_participant&tags_all=meeting_and_occurrence_id:<meeting_and_occurrence_id>&tags_all=is_attended:true

Find all mailing lists for a project

GET /query/resources?v=1&type=groupsio_mailing_list&tags=project_uid:<project_uid>

Find members of a mailing list

GET /query/resources?v=1&type=groupsio_member&tags=mailing_list_uid:<mailing_list_uid>

Find votes for a committee

GET /query/resources?v=1&type=vote&tags=committee_uid:<committee_uid>

Find responses for a vote

GET /query/resources?v=1&type=vote_response&tags=vote_uid:<vote_uid>

Find surveys for a project

GET /query/resources?v=1&type=survey&tags=project_uid:<project_uid>

Find surveys for a committee

GET /query/resources?v=1&type=survey&tags=committee_uid:<committee_uid>

Find responses for a survey

GET /query/resources?v=1&type=survey_response&tags=survey_uid:<survey_uid>

Find memberships for a project

GET /query/resources?v=1&type=project_membership&tags=project_uid:<project_uid>

Find memberships by status

GET /query/resources?v=1&type=project_membership&tags_all=project_uid:<project_uid>&tags_all=status:Active

Find memberships for a company

GET /query/resources?v=1&type=project_membership&tags=b2b_org_uid:<b2b_org_uid>

For the full list of queryable fields and tags per resource type, refer to the service's indexer contract linked in the table above.