{"name":"Open Parl Data API","description":"Swiss parliamentary data API providing access to political information","version":"1.0.0","links":{"self":{"href":"https://test-api.openparldata.ch","type":"application/json"},"documentation":{"href":"https://test-api.openparldata.ch/documentation","type":"text/html","title":"Interactive API Documentation (Swagger UI)"},"openapi":{"href":"https://test-api.openparldata.ch/openapi.json","type":"application/json","title":"OpenAPI 3.0 Specification"},"redoc":{"href":"https://test-api.openparldata.ch/redoc","type":"text/html","title":"Alternative API Documentation (ReDoc)"}},"api_versions":{"v1":{"version":"1.0","status":"stable","description":"Current stable version of the API","endpoints":[{"name":"access_badges","href":"https://test-api.openparldata.ch/v1/access_badges","methods":["GET"],"description":"Access Badges API endpoint - Zugangsausweise von Personen.","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"person_external_id":{"type":"string","description":"Person external identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"person_id":{"type":"integer","description":"Person ID (Foreign Key to persons)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"person_fullname":{"type":"string","description":"Person full name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"beneficiary_person_id":{"type":"integer","description":"Beneficiary person ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"beneficiary_person_fullname":{"type":"string","description":"Beneficiary person full name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"beneficiary_group":{"type":"string","description":"Beneficiary group","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_de":{"type":"string","description":"Type (Deutsch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_fr":{"type":"string","description":"Type (Französisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_it":{"type":"string","description":"Type (Italienisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_harmonized":{"type":"string","description":"Harmonized type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"valid_from":{"type":"date","description":"Valid from date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"valid_to":{"type":"date","description":"Valid to date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"version":{"type":"integer","description":"Version number","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"latest":{"type":"boolean","description":"Is latest version","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_at":{"type":"timestamp","description":"Last updated timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"updated_external_at":{"type":"timestamp","description":"External update timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"body_id":{"type":"integer","description":"Body ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false}}},{"name":"affairs","href":"https://test-api.openparldata.ch/v1/affairs","methods":["GET"],"description":"Affairs API endpoint - represents political affairs and legislative proposals","fields":{"type_harmonized_de":{"type":"string","description":"Harmonized type (German)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"type_harmonized_fr":{"type":"string","description":"Harmonized type (French)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"type_harmonized_it":{"type":"string","description":"Harmonized type (Italian)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"type_harmonized_rm":{"type":"string","description":"Harmonized type (Romansh)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"type_harmonized_en":{"type":"string","description":"Harmonized type (English)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"type_harmonized_id":{"type":"integer","description":"Harmonized type OParl-ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"type_harmonized_wikidata_id":{"type":"string","description":"Harmonized type Wikidata-ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"state_name_harmonized_de":{"type":"string","description":"Harmonized state (German)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"state_name_harmonized_fr":{"type":"string","description":"Harmonized state (French)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"state_name_harmonized_it":{"type":"string","description":"Harmonized state (Italian)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"state_name_harmonized_rm":{"type":"string","description":"Harmonized state (Romansh)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"state_name_harmonized_id":{"type":"integer","description":"Harmonized state OParl-ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"active":{"type":"boolean","description":"Affair is active","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":false},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"number":{"type":"string","description":"Affair number","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"external_alternative_id":{"type":"string","description":"External alternative identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"title_de":{"type":"string","description":"Affair title in German","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_fr":{"type":"string","description":"Affair title in French","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_it":{"type":"string","description":"Affair title in Italian","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_rm":{"type":"string","description":"Affair title in Romansh","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_long_de":{"type":"string","description":"Long affair title in German","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_long_fr":{"type":"string","description":"Long affair title in French","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_long_it":{"type":"string","description":"Long affair title in Italian","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_long_rm":{"type":"string","description":"Long affair title in Romansh","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_name_de":{"type":"string","description":"Type name in German","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_name_fr":{"type":"string","description":"Type name in French","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_name_it":{"type":"string","description":"Type name in Italian","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_name_rm":{"type":"string","description":"Type name in Romansh","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_external_id":{"type":"string","description":"External type identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"state_name_de":{"type":"string","description":"State name in German","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"state_name_fr":{"type":"string","description":"State name in French","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"state_name_it":{"type":"string","description":"State name in Italian","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"state_name_rm":{"type":"string","description":"State name in Romansh","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"state_external_id":{"type":"string","description":"External state identifier","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"begin_date":{"type":"timestamp","description":"Begin date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"end_date":{"type":"timestamp","description":"End date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"url_external_de":{"type":"string","description":"External URL in German","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_external_fr":{"type":"string","description":"External URL in French","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_external_it":{"type":"string","description":"External URL in Italian","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"url_external_rm":{"type":"string","description":"External URL in Romansh","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_external_at":{"type":"timestamp","description":"External update timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_at":{"type":"timestamp","description":"Last updated timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false}}},{"name":"agendas","href":"https://test-api.openparldata.ch/v1/agendas","methods":["GET"],"description":"Agendas API endpoint - represents agenda items and meeting topics","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":true,"filterable":true,"sortable":true,"searchable":true,"multi":true},"meeting_id":{"type":"integer","description":"Related meeting ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"item_date":{"type":"timestamp","description":"Agenda item date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"item_external_id":{"type":"string","description":"External item ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"item_title":{"type":"string","description":"Agenda item title","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"item_number_display":{"type":"string","description":"Display number for agenda item","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"item_category":{"type":"string","description":"Agenda item category","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"item_url":{"type":"string","description":"Agenda item URL","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"item_affair_number":{"type":"string","description":"Related affair number","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"item_affair_id":{"type":"integer","description":"Related affair ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"item_language":{"type":"string","description":"Item language","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"item_description":{"type":"string","description":"Agenda item description","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"item_number":{"type":"string","description":"Agenda item number","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"item_result":{"type":"string","description":"Agenda item result","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"item_status":{"type":"string","description":"Agenda item status","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false}}},{"name":"bodies","href":"https://test-api.openparldata.ch/v1/bodies","methods":["GET"],"description":"Bodies API endpoint - represents political bodies and organizations.\n","fields":{"legislative_name_de":{"type":"string","description":"Legislative name in German","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"legislative_name_en":{"type":"string","description":"Legislative name in English","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"legislative_name_fr":{"type":"string","description":"Legislative name in French","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"legislative_name_it":{"type":"string","description":"Legislative name in Italian","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":true,"filterable":true,"sortable":true,"searchable":true,"multi":true},"name_de":{"type":"string","description":"Body name in German","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_fr":{"type":"string","description":"Body name in French","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_it":{"type":"string","description":"Body name in Italian","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_en":{"type":"string","description":"Body name in English","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"wikidata_id":{"type":"string","description":"Wikidata identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"name":{"type":"string","description":"Body name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"lang":{"type":"string","description":"Primary language","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"indexed":{"type":"boolean","description":"Auto import enabled","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"type":{"type":"string","description":"Body type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_name_de":{"type":"string","description":"Body type in German","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_name_fr":{"type":"string","description":"Body type in French","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_name_it":{"type":"string","description":"Body type in Italian","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_name_rm":{"type":"string","description":"Body type in Romansh","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_name_en":{"type":"string","description":"Body type in English","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"canton_key":{"type":"string","description":"Canton key","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"canton_id_bfs":{"type":"integer","description":"Canton BFS ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"canton_table_id":{"type":"integer","description":"Canton table ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"country_key":{"type":"string","description":"Country key","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"position":{"type":"integer","description":"Sort order","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"legislative_name":{"type":"string","description":"Legislative name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"executive_name_de":{"type":"string","description":"Executive name in German","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"executive_name_fr":{"type":"string","description":"Executive name in French","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"executive_name_it":{"type":"string","description":"Executive name in Italian","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"executive_name_en":{"type":"string","description":"Executive name in English","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"legislative_wikidata_id":{"type":"string","description":"Legislative Wikidata ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"legislative_seats":{"type":"integer","description":"Number of legislative seats","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"executive_name":{"type":"string","description":"Executive name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"executive_wikidata_id":{"type":"string","description":"Executive Wikidata ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"executive_seats":{"type":"integer","description":"Number of executive seats","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"consultations_url":{"type":"string","description":"Consultations URL","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"flag_image_url":{"type":"string","description":"Flag image URL","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"flag_image_oparl_url":{"type":"string","description":"Flag Image URL stored at Open Parl Data","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"has_parliament":{"type":"boolean","description":"Has parliament","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"population":{"type":"integer","description":"Population count","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"languages":{"type":"string","description":"Supported languages","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false}}},{"name":"contributors","href":"https://test-api.openparldata.ch/v1/contributors","methods":["GET"],"description":"Contributors API endpoint - Beitragende zu Geschäften, Sitzungen, etc.","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"affair_id":{"type":"integer","description":"Affair ID (Foreign Key to affairs)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"person_id":{"type":"integer","description":"Person ID (Foreign Key to persons)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"group_id":{"type":"integer","description":"Group ID (Foreign Key to groups)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"meeting_id":{"type":"integer","description":"Meeting ID (Foreign Key to meetings)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"session_id":{"type":"integer","description":"Session ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"type":{"type":"string","description":"Contributor type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_de":{"type":"string","description":"Role (Deutsch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_fr":{"type":"string","description":"Role (Französisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_it":{"type":"string","description":"Role (Italienisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_rm":{"type":"string","description":"Role (Rätoromanisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_external_id":{"type":"string","description":"External role identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_harmonized":{"type":"string","description":"Harmonized role key","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_harmonized_de":{"type":"string","description":"Harmonized role (Deutsch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_harmonized_fr":{"type":"string","description":"Harmonized role (Französisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_harmonized_it":{"type":"string","description":"Harmonized role (Italienisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_harmonized_rm":{"type":"string","description":"Harmonized role (Rätoromanisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_harmonized_en":{"type":"string","description":"Harmonized role (English)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"firstname":{"type":"string","description":"First name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"lastname":{"type":"string","description":"Last name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"fullname":{"type":"string","description":"Full name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_de":{"type":"string","description":"Party (Deutsch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_fr":{"type":"string","description":"Party (Französisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_it":{"type":"string","description":"Party (Italienisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_rm":{"type":"string","description":"Party (Rätoromanisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_harmonized_de":{"type":"string","description":"Harmonized party (Deutsch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_harmonized_fr":{"type":"string","description":"Harmonized party (Französisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_harmonized_it":{"type":"string","description":"Harmonized party (Italienisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_wikidata_id":{"type":"string","description":"Party Wikidata ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"position":{"type":"integer","description":"Sort order","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_at":{"type":"timestamp","description":"Last updated timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"updated_external_at":{"type":"timestamp","description":"External update timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false}}},{"name":"docs","href":"https://test-api.openparldata.ch/v1/docs","methods":["GET"],"description":"Documents API endpoint - represents political documents and files","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":true,"filterable":true,"sortable":true,"searchable":true,"multi":true},"parent_type":{"type":"string","description":"Parent entity type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"hash":{"type":"string","description":"Document hash","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"external_alternative_id":{"type":"string","description":"Alternative external identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"name":{"type":"string","description":"Document name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url":{"type":"string","description":"Document URL","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"url_oparl":{"type":"string","description":"OPARL internal document URL","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"date":{"type":"date","description":"Document date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"size":{"type":"integer","description":"Document size in bytes","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"category_de":{"type":"string","description":"Document category in German","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"category_fr":{"type":"string","description":"Document category in French","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"category_it":{"type":"string","description":"Document category in Italian","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"category_harmonized":{"type":"string","description":"Harmonized document category","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"format":{"type":"string","description":"Document format/MIME type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"language":{"type":"string","description":"Document language","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_external_at":{"type":"timestamp","description":"External update timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_at":{"type":"timestamp","description":"Last updated timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"text":{"type":"string","description":"Extracted document text","required":false,"filterable":false,"sortable":false,"searchable":true,"multi":false},"tika_metadata":{"type":"string","description":"Apache Tika metadata","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"doc_text_tsv_de":{"type":"tsvector","description":"Full-text search vector (German)","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"doc_text_tsv_fr":{"type":"tsvector","description":"Full-text search vector (French)","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"doc_text_tsv_it":{"type":"tsvector","description":"Full-text search vector (Italian)","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"doc_text_tsv_rm":{"type":"tsvector","description":"Full-text search vector (Romansh)","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"doc_text_tsv_en":{"type":"tsvector","description":"Full-text search vector (English)","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"doc_text_tsv_multi":{"type":"tsvector","description":"Full-text search vector (multilingual fallback)","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"affair_id":{"type":"integer","description":"Related affair ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"meeting_id":{"type":"integer","description":"Related meeting ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"agenda_id":{"type":"integer","description":"Related agenda ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true}}},{"name":"events","href":"https://test-api.openparldata.ch/v1/events","methods":["GET"],"description":"Events API endpoint - meetings scheduled on affairs.","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"date":{"type":"date","description":"Event date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"position":{"type":"integer","description":"Sort order","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"title_de":{"type":"string","description":"Title (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_fr":{"type":"string","description":"Title (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_it":{"type":"string","description":"Title (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_rm":{"type":"string","description":"Title (Romansh)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_external_id":{"type":"string","description":"Title external ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_harmonized":{"type":"string","description":"Harmonized title","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"actor_de":{"type":"string","description":"Actor (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"actor_fr":{"type":"string","description":"Actor (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"actor_it":{"type":"string","description":"Actor (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"actor_external_id":{"type":"string","description":"Actor external ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"actor_type":{"type":"string","description":"Actor type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"affair_id":{"type":"integer","description":"Affair ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"meeting_parent_type":{"type":"string","description":"Meeting parent type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"meeting_id":{"type":"integer","description":"Meeting ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"meeting_parent_external_id":{"type":"string","description":"Meeting parent external ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"details_url":{"type":"string","description":"Details URL","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"details_text":{"type":"string","description":"Details text","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"updated_external_at":{"type":"timestamp","description":"External update timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_at":{"type":"timestamp","description":"Last updated timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"last":{"type":"boolean","description":"Indicates if this is the last event","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false}}},{"name":"external_links","href":"https://test-api.openparldata.ch/v1/external_links","methods":["GET"],"description":"External Links API endpoint - external links attached to persons","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"person_id":{"type":"integer","description":"Person ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"affair_id":{"type":"integer","description":"Affair ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"url_de":{"type":"string","description":"URL (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_fr":{"type":"string","description":"URL (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_it":{"type":"string","description":"URL (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_de":{"type":"string","description":"Name (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_fr":{"type":"string","description":"Name (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_it":{"type":"string","description":"Name (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_de":{"type":"string","description":"Type (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_fr":{"type":"string","description":"Type (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_it":{"type":"string","description":"Type (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_harmonized_en":{"type":"string","description":"Harmonized type (English)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"created_external_at":{"type":"timestamp","description":"Created external timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_external_at":{"type":"timestamp","description":"External update timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_at":{"type":"timestamp","description":"Last updated timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false}}},{"name":"groups","href":"https://test-api.openparldata.ch/v1/groups","methods":["GET"],"description":"Groups API endpoint - committees, parliamentary groups, commissions, including relations to memberships, meetings, contributors.","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"external_alternative_id":{"type":"string","description":"External alternative identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_external_de":{"type":"string","description":"External URL (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_external_fr":{"type":"string","description":"External URL (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_external_it":{"type":"string","description":"External URL (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_external_rm":{"type":"string","description":"External URL (Romansh)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_harmonized_id":{"type":"integer","description":"Harmonized type Oparl ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"type_harmonized_de":{"type":"string","description":"Harmonized type (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_harmonized_fr":{"type":"string","description":"Harmonized type (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_harmonized_it":{"type":"string","description":"Harmonized type (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_harmonized_rm":{"type":"string","description":"Harmonized type (Romansh)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_harmonized":{"type":"string","description":"Harmonized type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_harmonized_en":{"type":"string","description":"Harmonized type (English)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_harmonized_position":{"type":"integer","description":"Harmonized type (Position)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"type_harmonized_wikidata_id":{"type":"string","description":"Harmonized type (Wikidata)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"type_external_de":{"type":"string","description":"External type (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"active":{"type":"boolean","description":"Active status","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"name_de":{"type":"string","description":"Name (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_fr":{"type":"string","description":"Name (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_it":{"type":"string","description":"Name (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_rm":{"type":"string","description":"Name (Romansh)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"abbreviation_de":{"type":"string","description":"Abbreviation (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"abbreviation_fr":{"type":"string","description":"Abbreviation (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"abbreviation_it":{"type":"string","description":"Abbreviation (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"abbreviation_rm":{"type":"string","description":"Abbreviation (Romansh)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"description_de":{"type":"string","description":"Description (German)","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"description_fr":{"type":"string","description":"Description (French)","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"description_it":{"type":"string","description":"Description (Italian)","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"description_rm":{"type":"string","description":"Description (Romansh)","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"type_external_fr":{"type":"string","description":"External type (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_it":{"type":"string","description":"External type (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_rm":{"type":"string","description":"External type (Romansh)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_id":{"type":"string","description":"External type ID","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"begin_date":{"type":"date","description":"Begin date","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"end_date":{"type":"date","description":"End date","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"wikidata_id":{"type":"string","description":"Wikidata ID","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"parent_group_external_id":{"type":"string","description":"Parent group external ID","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"child_group_external_id":{"type":"string","description":"Child group external ID","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"parent_council_external_id":{"type":"string","description":"Parent council external ID","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"contact":{"type":"string","description":"Contact information","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"updated_at":{"type":"timestamp","description":"Last updated timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"updated_external_at":{"type":"timestamp","description":"External update timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false}}},{"name":"interests","href":"https://test-api.openparldata.ch/v1/interests","methods":["GET"],"description":"Interests API endpoint - interests declared by persons","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"person_id":{"type":"integer","description":"Person ID (foreign key to persons)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type_de":{"type":"string","description":"Type (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_de":{"type":"string","description":"Name (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_fr":{"type":"string","description":"Name (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_it":{"type":"string","description":"Name (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_short_de":{"type":"string","description":"Short name (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_short_fr":{"type":"string","description":"Short name (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_short_it":{"type":"string","description":"Short name (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"begin_date":{"type":"date","description":"Begin date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"declaration_doc_title":{"type":"string","description":"Declaration document title","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"declaration_doc_url":{"type":"string","description":"Declaration document URL","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"end_date":{"type":"date","description":"End date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"ex_officio":{"type":"boolean","description":"Ex officio status","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"group_de":{"type":"string","description":"Group (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"group_fr":{"type":"string","description":"Group (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"group_it":{"type":"string","description":"Group (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_abbreviation_de":{"type":"string","description":"Name abbreviation (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_abbreviation_fr":{"type":"string","description":"Name abbreviation (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_abbreviation_it":{"type":"string","description":"Name abbreviation (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_id":{"type":"integer","description":"Name ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"place":{"type":"string","description":"Place","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_external_id":{"type":"string","description":"Role external ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_name_de":{"type":"string","description":"Role name (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_name_fr":{"type":"string","description":"Role name (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_name_it":{"type":"string","description":"Role name (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_id":{"type":"string","description":"Type external ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_fr":{"type":"string","description":"Type (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_it":{"type":"string","description":"Type (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_payment_de":{"type":"string","description":"Payment type (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_payment_fr":{"type":"string","description":"Payment type (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_payment_harmonized":{"type":"string","description":"Harmonized payment type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_payment_it":{"type":"string","description":"Payment type (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"updated_at":{"type":"timestamp","description":"Update timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_external_at":{"type":"timestamp","description":"External update timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"url":{"type":"string","description":"URL","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false}}},{"name":"meetings","href":"https://test-api.openparldata.ch/v1/meetings","methods":["GET"],"description":"Meetings API endpoint - Meetings, including relations to agendas, documents, groups, parent/child meetings.","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":true,"filterable":true,"sortable":true,"searchable":true,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"type":{"type":"string","description":"Meeting type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"group_id":{"type":"integer","description":"Associated group ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"parent_type":{"type":"string","description":"Parent meeting type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"parent_external_id":{"type":"string","description":"Parent meeting external ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"parent_oparl_id":{"type":"integer","description":"Parent meeting OPARL ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"state":{"type":"string","description":"Meeting state","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"name_de":{"type":"string","description":"Meeting name in German","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_fr":{"type":"string","description":"Meeting name in French","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_it":{"type":"string","description":"Meeting name in Italian","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"name_rm":{"type":"string","description":"Meeting name in Romansh","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"abbreviation":{"type":"string","description":"Meeting abbreviation","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"number":{"type":"string","description":"Meeting number","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"begin_date":{"type":"timestamp","description":"Meeting begin date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"end_date":{"type":"timestamp","description":"Meeting end date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"location":{"type":"string","description":"Meeting location","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_at":{"type":"timestamp","description":"Last updated timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_external_at":{"type":"string","description":"External update timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"description_de":{"type":"string","description":"Meeting description in German","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"description_fr":{"type":"string","description":"Meeting description in French","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"description_it":{"type":"string","description":"Meeting description in Italian","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_de":{"type":"string","description":"External type description in German","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_fr":{"type":"string","description":"External type description in French","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_it":{"type":"string","description":"External type description in Italian","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_external_de":{"type":"string","description":"External URL in German","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_external_fr":{"type":"string","description":"External URL in French","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_external_it":{"type":"string","description":"External URL in Italian","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_external_rm":{"type":"string","description":"External URL in Romansh","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false}}},{"name":"memberships","href":"https://test-api.openparldata.ch/v1/memberships","methods":["GET"],"description":"Memberships API endpoint - memberships of persons in groups","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"person_id":{"type":"integer","description":"Person ID (foreign key to persons)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"person_fullname":{"type":"string","description":"Fullname","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"group_id":{"type":"integer","description":"Group ID (foreign key to groups)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"begin_date":{"type":"date","description":"Begin date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"end_date":{"type":"date","description":"End date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"active":{"type":"boolean","description":"Active membership","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"type_harmonized":{"type":"string","description":"Harmonized type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_harmonized_oparl_id":{"type":"integer","description":"Harmonized type ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"type_harmonized_de":{"type":"string","description":"Harmonized type (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_harmonized_fr":{"type":"string","description":"Harmonized type (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_harmonized_it":{"type":"string","description":"Harmonized type (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_harmonized_rm":{"type":"string","description":"Harmonized type (Romansh)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_harmonized_en":{"type":"string","description":"Harmonized type (English)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"updated_external_at":{"type":"timestamp","description":"External update timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_at":{"type":"timestamp","description":"Last updated timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"group_name_de":{"type":"string","description":"German group name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"group_name_fr":{"type":"string","description":"French group name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"group_name_it":{"type":"string","description":"Italian group name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_name_de":{"type":"string","description":"German role name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_name_fr":{"type":"string","description":"French role name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"role_name_it":{"type":"string","description":"Italian role name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_de":{"type":"string","description":"German external type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_fr":{"type":"string","description":"French external type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_it":{"type":"string","description":"Italian external type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false}}},{"name":"person_images","href":"https://test-api.openparldata.ch/v1/person_images","methods":["GET"],"description":"Person Images API endpoint - images/photos for persons","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"person_id":{"type":"integer","description":"Person ID (foreign key to persons)","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"source_url":{"type":"string","description":"Source URL of the image","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"oparl_url":{"type":"string","description":"OPARL URL of the image","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"profile_url":{"type":"string","description":"Profile image URL","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"thumb_url":{"type":"string","description":"Thumbnail image URL","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"version":{"type":"integer","description":"Image version number","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"latest":{"type":"boolean","description":"Flag for latest version","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"valid_from":{"type":"date","description":"Valid from date","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"valid_to":{"type":"date","description":"Valid to date","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false}}},{"name":"persons","href":"https://test-api.openparldata.ch/v1/persons","methods":["GET"],"description":"Persons API endpoint - individuals, including relations to memberships, interests, badges, affairs, speeches, votes, external links.","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"firstname":{"type":"string","description":"First name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"lastname":{"type":"string","description":"Last name","required":true,"filterable":true,"sortable":true,"searchable":true,"multi":false},"fullname":{"type":"string","description":"Full name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"birthday":{"type":"date","description":"Date of birth","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"birthday_format":{"type":"string","description":"Format der Geburtsangabe (day, month, year oder null falls unbekannt)","required":false,"filterable":true,"sortable":false,"searchable":false,"multi":false},"deathday":{"type":"date","description":"Date of death","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"gender":{"type":"string","description":"Gender","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_external_id":{"type":"string","description":"Party external ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"parliamentary_group_name_rm":{"type":"string","description":"Parliamentary group (Romansh)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"parliamentary_group_external_id":{"type":"string","description":"Parliamentary group external ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_de":{"type":"string","description":"Party (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"party_fr":{"type":"string","description":"Party (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"party_it":{"type":"string","description":"Party (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"parliamentary_group_name_de":{"type":"string","description":"Parliamentary group (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"parliamentary_group_name_fr":{"type":"string","description":"Parliamentary group (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"parliamentary_group_name_it":{"type":"string","description":"Parliamentary group (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"image_url_external":{"type":"string","description":"External image URL","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"image_url_oparl":{"type":"string","description":"OParl image URL","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_at":{"type":"timestamp","description":"Last updated timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_external_at":{"type":"timestamp","description":"External update timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"party_harmonized_de":{"type":"string","description":"Party harmonized (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_harmonized_fr":{"type":"string","description":"Party harmonized (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_harmonized_it":{"type":"string","description":"Party harmonized (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_harmonized_en":{"type":"string","description":"Party harmonized (English)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"party_harmonized_wikidata_id":{"type":"string","description":"Party harmonized Wikidata ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"external_alternative_id":{"type":"string","description":"External alternative ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"website_parliament_url_de":{"type":"string","description":"Parliament website URL (German)","required":false,"filterable":true,"sortable":false,"searchable":false,"multi":false},"website_parliament_url_fr":{"type":"string","description":"Parliament website URL (French)","required":false,"filterable":true,"sortable":false,"searchable":false,"multi":false},"website_parliament_url_it":{"type":"string","description":"Parliament website URL (Italian)","required":false,"filterable":true,"sortable":false,"searchable":false,"multi":false},"email":{"type":"string","description":"Email address","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"phone":{"type":"string","description":"Phone number","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"street":{"type":"string","description":"Street address","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"postal_code":{"type":"string","description":"Postal code","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"city":{"type":"string","description":"City","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"occupation_de":{"type":"string","description":"Occupation (German)","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"occupation_fr":{"type":"string","description":"Occupation (French)","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"occupation_it":{"type":"string","description":"Occupation (Italian)","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"title":{"type":"string","description":"Title","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"marital_status_de":{"type":"string","description":"marital status (German)","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"marital_status_fr":{"type":"string","description":"marital status (French)","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"marital_status_it":{"type":"string","description":"marital status (Italian)","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"electoral_district_de":{"type":"string","description":"Electoral district (German)","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"electoral_district_fr":{"type":"string","description":"Electoral district (French)","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"electoral_district_it":{"type":"string","description":"Electoral district (Italian)","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"website_personal":{"type":"string","description":"Personal website URL","required":false,"filterable":true,"sortable":false,"searchable":false,"multi":false},"parliament_sector":{"type":"string","description":"Parliament sector","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"parliament_seat":{"type":"string","description":"Parliament seat number","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"active":{"type":"boolean","description":"Active status (true/false)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"language":{"type":"string","description":"Language code","required":false,"filterable":true,"sortable":false,"searchable":false,"multi":false},"function_latest_de":{"type":"string","description":"Latest function (German)","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"function_latest_fr":{"type":"string","description":"Latest function (French)","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"function_latest_it":{"type":"string","description":"Latest function (Italian)","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"function_latest_rm":{"type":"string","description":"Latest function (Romansh)","required":false,"filterable":true,"sortable":false,"searchable":true,"multi":false},"function_latest_external_id":{"type":"string","description":"Latest function external ID","required":false,"filterable":true,"sortable":false,"searchable":false,"multi":false},"wikidata_id":{"type":"string","description":"Wikidata ID","required":false,"filterable":true,"sortable":false,"searchable":false,"multi":false}}},{"name":"speeches","href":"https://test-api.openparldata.ch/v1/speeches","methods":["GET"],"description":"Speeches API endpoint - speeches made in meetings, including relations to persons, affairs, meetings.","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"person_id":{"type":"integer","description":"Person ID (Foreign Key persons)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"person_role":{"type":"string","description":"Role of the person in the speech","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"date_start":{"type":"timestamp","description":"Speech start time","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"date_end":{"type":"timestamp","description":"Speech end time","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"text_content_de":{"type":"string","description":"Speech content (Deutsch)","required":false,"filterable":false,"sortable":false,"searchable":true,"multi":false},"text_content_fr":{"type":"string","description":"Speech content (Französisch)","required":false,"filterable":false,"sortable":false,"searchable":true,"multi":false},"text_content_it":{"type":"string","description":"Speech content (Italienisch)","required":false,"filterable":false,"sortable":false,"searchable":true,"multi":false},"text_content_de_tsv":{"type":"tsvector","description":"Full-text search vector for German content","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"text_content_fr_tsv":{"type":"tsvector","description":"Full-text search vector for French content","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"text_content_it_tsv":{"type":"tsvector","description":"Full-text search vector for Italian content","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"type_external_id":{"type":"string","description":"External type identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_de":{"type":"string","description":"External type (Deutsch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_fr":{"type":"string","description":"External type (Französisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_external_it":{"type":"string","description":"External type (Italienisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"affair_id":{"type":"integer","description":"Affair ID (Fremdschlüssel zu affairs)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"meeting_id":{"type":"integer","description":"Meeting ID (Foreign Key meetings)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"agenda_external_id":{"type":"string","description":"Agenda external identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"agenda_id":{"type":"integer","description":"Agenda ID (Foreign Key agendas)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"url":{"type":"string","description":"Speech URL","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"audio_url":{"type":"string","description":"Audio URL","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"video_url":{"type":"string","description":"Video URL","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"meeting_external_id":{"type":"string","description":"Meeting external identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"meeting_type":{"type":"string","description":"Meeting type","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"updated_at":{"type":"timestamp","description":"Last updated timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"updated_external_at":{"type":"timestamp","description":"External update timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false}}},{"name":"texts","href":"https://test-api.openparldata.ch/v1/texts","methods":["GET"],"description":"Texts API endpoint - text content/documents","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":false,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"affair_id":{"type":"integer","description":"Affair ID (foreign key to affairs)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"type_de":{"type":"string","description":"Type (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_fr":{"type":"string","description":"Type (French)","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"type_it":{"type":"string","description":"Type (Italian)","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"type_rm":{"type":"string","description":"Type (Romansh)","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"text_de":{"type":"string","description":"Text (German)","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"text_fr":{"type":"string","description":"Text (French)","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"text_it":{"type":"string","description":"Text (Italian)","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"text_rm":{"type":"string","description":"Text (Romansh)","required":false,"filterable":false,"sortable":true,"searchable":true,"multi":false},"type_en":{"type":"string","description":"Type (English)","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"text_format":{"type":"string","description":"Text format","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"text_date":{"type":"date","description":"Text date","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"updated_at":{"type":"timestamp","description":"Last updated timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"updated_external_at":{"type":"timestamp","description":"External update timestamp","required":false,"filterable":false,"sortable":true,"searchable":false,"multi":false},"text_de_tsv":{"type":"tsvector","description":"Full-text search vector (German)","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"text_fr_tsv":{"type":"tsvector","description":"Full-text search vector (French)","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"text_it_tsv":{"type":"tsvector","description":"Full-text search vector (Italian)","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false},"text_rm_tsv":{"type":"tsvector","description":"Full-text search vector (Romansh)","required":false,"filterable":false,"sortable":false,"searchable":false,"multi":false}}},{"name":"votes","href":"https://test-api.openparldata.ch/v1/votes","methods":["GET"],"description":"Votes API endpoint - Individual votes on polls","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"voting_id":{"type":"integer","description":"Voting ID (foreign key to votings)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"voting_external_id":{"type":"string","description":"External voting ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"person_id":{"type":"integer","description":"Person ID (foreign key to persons)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"vote":{"type":"string","description":"Vote value (yes/no/abstention/absent)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"vote_display_de":{"type":"string","description":"Vote display text (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"vote_display_fr":{"type":"string","description":"Vote display text (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"vote_display_it":{"type":"string","description":"Vote display text (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"person_party_de":{"type":"string","description":"Person party (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"person_party_fr":{"type":"string","description":"Person party (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"person_party_it":{"type":"string","description":"Person party (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"person_party_rm":{"type":"string","description":"Person party (Romansh)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"person_parliamentary_group_name_de":{"type":"string","description":"Person parliamentary group name (German)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"person_parliamentary_group_name_fr":{"type":"string","description":"Person parliamentary group name (French)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"person_parliamentary_group_name_it":{"type":"string","description":"Person parliamentary group name (Italian)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"person_parliamentary_group_name_rm":{"type":"string","description":"Person parliamentary group name (Romansh)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"person_fullname":{"type":"string","description":"Person full name","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false}}},{"name":"votings","href":"https://test-api.openparldata.ch/v1/votings","methods":["GET"],"description":"Votings API endpoint - represents voting results for affairs, meetings, etc.","fields":{"id":{"type":"integer","description":"Unique identifier","required":true,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_id":{"type":"integer","description":"Body ID (foreign key to bodies)","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"body_key":{"type":"string","description":"Body key identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"external_id":{"type":"string","description":"External identifier","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"date":{"type":"date","description":"Voting date","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"external_alternative_id":{"type":"string","description":"External alternative ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":true},"affair_id":{"type":"integer","description":"Affair ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":true},"title_de":{"type":"string","description":"Title (Deutsch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_fr":{"type":"string","description":"Title (Französisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"title_it":{"type":"string","description":"Title (Italienisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_external_de":{"type":"string","description":"URL (Deutsch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_external_fr":{"type":"string","description":"URL (Französisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"url_external_it":{"type":"string","description":"URL (Italienisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_de":{"type":"string","description":"Type (Deutsch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_fr":{"type":"string","description":"Type (Französisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"type_it":{"type":"string","description":"Type (Italienisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"meaning_of_yes_de":{"type":"string","description":"Meaning of yes (Deutsch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"meaning_of_yes_fr":{"type":"string","description":"Meaning of yes (Französisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"meaning_of_yes_it":{"type":"string","description":"Meaning of yes (Italienisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"meaning_of_no_de":{"type":"string","description":"Meaning of no (Deutsch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"meaning_of_no_fr":{"type":"string","description":"Meaning of no (Französisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"meaning_of_no_it":{"type":"string","description":"Meaning of no (Italienisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"results_yes":{"type":"integer","description":"Number of yes votes","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"results_no":{"type":"integer","description":"Number of no votes","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"results_abstention":{"type":"integer","description":"Number of abstentions","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"results_absent":{"type":"integer","description":"Number of absentees","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"results_string":{"type":"string","description":"Results as string","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"affair_title_de":{"type":"string","description":"Affair title (Deutsch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"affair_title_fr":{"type":"string","description":"Affair title (Französisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"affair_title_it":{"type":"string","description":"Affair title (Italienisch)","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"decision":{"type":"string","description":"Decision","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"meeting_id":{"type":"integer","description":"Meeting ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"group_id":{"type":"integer","description":"Group ID","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"group_external_id":{"type":"string","description":"Group external ID","required":false,"filterable":true,"sortable":true,"searchable":true,"multi":false},"updated_at":{"type":"timestamp","description":"Last updated timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"updated_external_at":{"type":"timestamp","description":"External update timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false},"created_at":{"type":"timestamp","description":"Creation timestamp","required":false,"filterable":true,"sortable":true,"searchable":false,"multi":false}}}]}},"current_version":"v1","meta":{"total_endpoints":18,"supported_formats":["json"],"supported_methods":["GET"],"pagination":true,"filtering":true,"sorting":true,"field_selection":true,"versioning":{"scheme":"path","pattern":"/v{version}/{endpoint}","deprecated_redirect":"/api/v1/* redirects to /v1/*"}}}