Get Active Sessions
get_active_sessionsFull Description
Returns all currently active legislative sessions across all US states. Use this to discover valid session identifiers before filtering search_legislation results by session.
Use the PolicyNote app to access structured policy and regulatory intelligence from around the world. Search legislation, regulatory actions, policy updates, and government activity across jurisdictions.
The app enables developers, analysts, and policy professionals to retrieve policy data programmatically and integrate it into internal tools, research workflows, dashboards, or monitoring systems. Queries return structured information about policy developments, government sources, and regulatory changes.
PolicyNote helps teams track public policy activity, build alerts, power analysis tools, and integrate government intelligence into their applications.
get_active_sessionsReturns all currently active legislative sessions across all US states. Use this to discover valid session identifiers before filtering search_legislation results by session.
get_legislation_analyticsFetch proprietary FiscalNote analytics for one or more US bills by their IDs. Accepts up to 200 bill IDs and returns scored insights such as likelihood of passage and other predictive signals. Only available for US legislation.
idsarrayA comma-separated list of IDs to get proprietary analytics for. Maximum length of 100. If this limit is exceeded, the response will automatically truncate to the first 100 and return a 206 Partial Content response code
get_legislation_eventsFetch committee hearings and committee markups for one or more US bills by their IDs. Accepts up to 200 bill IDs and an optional date range to filter events. Returns event metadata including event type, date, committee, and associated bills. Only available for US legislation.
idsarrayA comma-separated list of legislation IDs to get legislative events for. Maximum length of 100. If this limit is exceeded, the response will automatically truncate to the first 100 and return a 206 Partial Content response code.
action_date_fromstringAn optional date parameter to filter all legislative events to dates after the given date.
action_date_tostringAn optional date parameter to filter all legislative events to dates before the given date.
get_legislation_votesFetch all recorded committee and chamber votes for one or more US bills by their IDs. Accepts up to 200 bill IDs and returns vote outcomes, vote counts, and how individual members voted. Only available for US legislation.
idsarrayA comma-separated list of IDs to get committee and chamber votes for. Maximum length of 100. If this limit is exceeded, the response will automatically truncate to the first 100 and return a 206 Partial Content response code.
pn_get_document_textFetch the full text content of a legislative or regulatory document. IMPORTANT: Only call this tool if a documents[] array was present in a prior tool response AND the specific document object contains a pn_doc_path field. Do not call this tool if pn_doc_path is absent. Pass the pn_doc_path value exactly as returned — it will start with /fn-document-service/. Note: sources[] entries do not have a pn_doc_path and cannot be fetched with this tool. Returns extracted plain text suitable for summarization or analysis.
pn_doc_pathstringsearch_legislationSearch for legislation. Supports keyword queries, locality codes, status, sponsor, date range, and pagination. Issue and label IDs must be retrieved first from the appdata/issues endpoint. IMPORTANT: For non-US localities, locality_code must include BOTH the bare ISO code AND its "PS-" prefixed variant (e.g., ["GB", "PS-GB"] for the UK; ["EU", "PS-EU"] for the EU). US localities (e.g. "US", "US-CA") do not need the prefix. Returns legislation metadata (title, status, sponsors, actions, etc.) but not the organization-specific issues, labels, or notes. To fetch full details for known IDs, use search_legislation_by_id instead.
chamber_of_originarrayFilter on chamber of origin. The potential values are highly dependent on each legislation's jurisdiction, and are not always enumerated in a well-defined set of options. For US Legislation, the potential values include 'UPPER', 'LOWER', and 'JOINT'.
continuation_tokenstringContinuation token for paging.
fieldsetstringWhich response type you're looking for.
BRIEFDEFAULTFULLDEFAULTinclude_all_actionsbooleanAn optional flag for BRIEF and DEFAULT responses to include all bill actions, rather than just the last action.
Falseinclude_all_similar_billsbooleanInclude all similar bills, not just current session/date range.
Falseinclude_all_sponsorsbooleanAn optional flag for BRIEF and DEFAULT responses to include all bill sponsors, rather than just the primary sponsors.
Falseinclude_source_language_fieldsbooleanInclude source-language fields for international bills.
Falseintroduction_date_fromstringIntroduction date >= this date (YYYY-MM-DD).
introduction_date_tostringIntroduction date <= this date (YYYY-MM-DD).
is_activebooleanUS LEGISLATION ONLY: A boolean parameter that determines whether the legislation returned will be of the current legislative session or of any session. Defaults to true. If true, only legislation belonging to currently active sessions (in the US) will be returned. If false, legislation from present and past sessions will be returned. If any date or session filters are provided, those will take priority over is_active. For global data, no active filtering will occur and all legislation will be returned. Use the date filters (last_action_date and introduction_date) instead. Without any date or session filters, you must set is_active=False in order to get international legislation.
TrueissuesarrayA list of one or more issue IDs. Issue IDs should first be retrieved from the appdata/issues path. More than one Label ID will provide results matching at least one Issue (Issue X OR Issue Y B). Pairing the Issues filter with the Labels filter will provide results matching at least one Issue AND at least one Label ((Issue X OR Issue Y) AND (Label A OR Label B)).
labelsarrayA list of one or more label IDs. Label IDs should first be retrieved from the appdata/issues path. More than one Label ID will provide results matching at least one Label (Label A OR Label B). Pairing the Labels filter with the Issues filter will provide results matching at least one label AND at least one Issue ((Label A OR Label B) AND (Issue X OR Issue Y)).
last_action_date_fromstringLast action date >= this date (YYYY-MM-DD).
last_action_date_tostringLast action date <= this date (YYYY-MM-DD).
limitintegerPage size limit (max 500).
10locality_codearrayAn array of one or more ISO codes that represents the relevant level of government for the entities you want returned. For federal governments, this will use the ISO 3166-1 alpha-2 country codes (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2), e.g. 'US', 'GB'. For subdivision governments, this will use the ISO 3166-2 subdivision codes (https://en.wikipedia.org/wiki/ISO_3166-2), e.g. 'US-CA'. For the European Union, locality_code will simply be 'EU'. To specify all 50 US States, plus DC, enter "US-*". You can include any mix of locality codes in a single request (e.g. ['US', 'US-CA', 'GB', 'PS-GB']). IMPORTANT: For global (non-US) localities, you must include BOTH the bare ISO code AND the same code prefixed with 'PS-' to ensure full coverage. For example, to query for the UK include both 'GB' and 'PS-GB'; for the EU include both 'EU' and 'PS-EU'. US localities (e.g. 'US', 'US-CA') do not require the 'PS-' prefix.
query_stringstringText to search for within title, description, document text, source_id, or other relevant text-based metadata fields. Boolean Operators and parentheses Grouping are supported (https://lucene.apache.org/core/2_9_4/queryparsersyntax.html#Boolean%20operators). Other Lucene Query Parser Syntax like Term Modifiers may not be supported now or in the future, may not be performant, or may not function as expected.
sessionarrayFilter on session ID. The potential values are highly dependent on each legislation's jurisdiction, and are not always enumerated in a well-defined set of options. For US Legislation, the potential values are formatted like '20212022r' for a regular session beginning in 2021 and ending in 2022. A special session will be formatted like '20222022ss1', with the number at the end referring to what round of special session it is.
sponsor_organization_idarrayPrimary sponsor organization IDs.
sponsor_person_idarrayPrimary sponsor person IDs.
statusarrayFilter on normalized legislation status.
typearrayFilter on legislation type. The potential values are highly dependent on each legislation's jurisdiction, and are not always enumerated in a well-defined set of options. For US Legislation, the potential values include 'BILL', 'AMENDMENT', 'RESOLUTION', 'JOINT_RESOLUTION', 'CONCURRENT_RESOLUTION', 'MEMORIAL', 'JOINT_MEMORIAL', or 'CONSTITUTIONAL_AMENDMENT'.
search_legislation_by_idFetch full details for one or more legislation records by their IDs. Accepts up to 200 IDs in a single request. Returns the complete legislative record including title, status, sponsors, actions, and related PolicyNote data. Supports BRIEF, DEFAULT, and FULL fieldsets to control response verbosity. Use this when you already have legislation IDs (e.g., from a prior search_legislation call).
idsarrayfieldsetstringBRIEFDEFAULTFULLDEFAULTinclude_all_actionsbooleaninclude_all_similar_billsbooleaninclude_all_sponsorsbooleaninclude_source_language_fieldsbooleansearch_regulationSearch for regulatory documents. Supports keyword queries, locality codes, regulation type, issuing agency, date ranges, and pagination. Issue and label IDs must be retrieved first from the appdata/issues endpoint. The type filter accepts: "comments", "dockets", "public_inspection_desk", "reg_notices", "reg_materials", or "other". IMPORTANT: For non-US localities, locality_code must include BOTH the bare ISO code AND its "PS-" prefixed variant (e.g., ["GB", "PS-GB"] for the UK). US localities do not need the prefix. Returns regulation metadata but not the organization-specific issues, labels, or notes. To fetch full details for known IDs, use search_regulation_by_id instead.
continuation_tokenstringContinuation token for paging. Null or absent = first page. Returned token can be reused to fetch next page.
issuesarrayA list of one or more issue IDs. Issue IDs should be retrieved from `/v1/appdata/issues`. Matches at least one issue.
labelsarrayA list of one or more label IDs. Label IDs should be retrieved from `/v1/appdata/issues`. Matches at least one label.
last_update_end_datestringFilter on last_update_date that is before or on this date (ISO 8601 format).
last_update_start_datestringFilter on last_update_date that is on or after this date (ISO 8601 format).
limitintegerResults limit or page size. Default 10, maximum 500. If exceeded, returns 206 Partial Content.
locality_codearrayAn array of one or more ISO codes that represents the relevant level of government for the entities you want returned. For federal governments, this will use the ISO 3166-1 alpha-2 country codes (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2), e.g. 'US', 'GB'. For subdivision governments, this will use the ISO 3166-2 subdivision codes (https://en.wikipedia.org/wiki/ISO_3166-2), e.g. 'US-CA'. For the European Union, locality_code will simply be 'EU'. To specify all 50 US States, plus DC, enter "US-*". You can include any mix of locality codes in a single request (e.g. ['US', 'US-CA', 'GB', 'PS-GB']). IMPORTANT: For global (non-US) localities, you must include BOTH the bare ISO code AND the same code prefixed with 'PS-' to ensure full coverage. For example, to query for the UK include both 'GB' and 'PS-GB'; for the EU include both 'EU' and 'PS-EU'. US localities (e.g. 'US', 'US-CA') do not require the 'PS-' prefix.
query_stringstringText to search for within title, description, document text, source_id, or other relevant text-based metadata fields. Boolean Operators and parentheses Grouping are supported (https://lucene.apache.org/core/2_9_4/queryparsersyntax.html#Boolean%20operators). Other Lucene Query Parser Syntax like Term Modifiers may not be supported now or in the future, may not be performant, or may not function as expected.
regulation_agencyarrayThe regulatory agency issuing the regulation. Usually formatted like "US:Department of Commerce (DOC) (US)" or "US-AL:Board of Pharmacy (AL) (US)" To get the agency name you want, find a regulation from that agency, find the organizations's filter_name value, and prepend the locality value.
typestringFilter on regulation type.
commentsdocketspublic_inspection_deskreg_noticesreg_materialsothersearch_regulation_by_idFetch full details for one or more regulatory documents by their IDs. Accepts up to 200 IDs in a single request. Returns the complete regulatory record including title, agency, document type, and related PolicyNote data. Use this when you already have regulation IDs (e.g., from a prior search_regulation call).
idsarrayA list of one or more regulation IDs. If more than 100 are provided, the response will truncate to 100 and return 206 Partial Content.