1. 検索用APIとは
国会会議録検索システムに登録されているデータを検索し、取得するための外部提供インターフェイス(API:Application Programming Interface)です。
2. 概要
- 国会会議録検索システム(ウェブサイト)での検索と同等の検索、返戻機能を有しています。
- HTTPのGetメソッドで送信された検索リクエストに対し、XML形式又はJSON形式でデータを返戻します。
- 次の3種類の検索APIがあります。検索リクエストの指定方法は同じですが、データの返戻形式が異なります。
- (1) 会議単位簡易出力では、指定した検索条件でヒットした会議録の情報(回次、院、会議名、号、開催日、ID、URL等)を、1リクエストに対し最大100件まで、XML形式又はJSON形式で返戻します。
- アクセスURLは https://kokkai.ndl.go.jp/api/meeting_list?{検索条件} です。
- 発言を対象に検索した場合には、会議録中の該当する発言の情報(発言者名、発言順、ID、URL)も合わせて返戻します。
- 本文のテキストデータは返戻しません。
- (2) 会議単位出力では、指定した検索条件でヒットした会議録の情報(回次、院、会議名、号、開催日、ID、URL等)と、当該会議録の全ての発言本文のテキストデータ(発言者等の情報を含みます。)を、1リクエストに対し最大10件まで、XML形式又はJSON形式で返戻します。
- アクセスURLは https://kokkai.ndl.go.jp/api/meeting?{検索条件} です。
- 本文のテキストデータが返戻される点で(1) 会議単位簡易出力と、会議録中の全ての発言が返戻される点で(3) 発言単位出力と異なります。
- (3) 発言単位出力では、指定した検索条件でヒットした発言本文のテキストデータ(発言者の情報を含みます。)を、その発言が含まれる会議録の情報(回次、院、会議名、号、開催日、ID、URL等)と共に、1リクエストに対し最大100件まで、XML形式又はJSON形式で返戻します。
- アクセスURLは https://kokkai.ndl.go.jp/api/speech?{検索条件} です。
- 本文のテキストデータが返戻される点で(1) 会議単位簡易出力と、ヒットした発言だけが返戻される点で(2) 会議単位出力と異なります。
- (1) 会議単位簡易出力では、指定した検索条件でヒットした会議録の情報(回次、院、会議名、号、開催日、ID、URL等)を、1リクエストに対し最大100件まで、XML形式又はJSON形式で返戻します。
- 検索結果のソート順は、会議開催日の新しい順となっています。
3. 利用例
- 利用例は次のとおりです。URLをクリックすると、別画面が開きます。
- いずれもカッコ()内が検索条件で、これらを&(半角のアンド)でつなぎURLエンコードしたものを、アクセスURLの後ろに付ける形になっています。
- 発言中に「科学技術」が含まれている(any=科学技術)会議録
- (1) 会議単位簡易出力
- https://kokkai.ndl.go.jp/api/meeting_list?any=%E7%A7%91%E5%AD%A6%E6%8A%80%E8%A1%93
- (2) 会議単位出力
- https://kokkai.ndl.go.jp/api/meeting?any=%E7%A7%91%E5%AD%A6%E6%8A%80%E8%A1%93
- (3) 発言単位出力
- https://kokkai.ndl.go.jp/api/speech?any=%E7%A7%91%E5%AD%A6%E6%8A%80%E8%A1%93
※anyは発言部分を検索対象とします。なお、出力件数・形式を指定していませんので、(1)(3)は30件、(2)は3件、XML形式で返戻しています。
- 会議名に「東日本大震災」が含まれている(nameOfMeeting=東日本大震災)会議録を、最大件数分((1)(3)は100件分(maximumRecords=100)、(2)は10件分(maximumRecords=10))、JSON形式(recordPacking=json)で
- (1) 会議単位簡易出力
- https://kokkai.ndl.go.jp/api/meeting_list?nameOfMeeting=%E6%9D%B1%E6%97%A5%E6%9C%AC%E5%A4%A7%E9%9C%87%E7%81%BD&maximumRecords=100&recordPacking=json
- (2) 会議単位出力
- https://kokkai.ndl.go.jp/api/meeting?nameOfMeeting=%E6%9D%B1%E6%97%A5%E6%9C%AC%E5%A4%A7%E9%9C%87%E7%81%BD&maximumRecords=10&recordPacking=json
- (3) 発言単位出力
- https://kokkai.ndl.go.jp/api/speech?nameOfMeeting=%E6%9D%B1%E6%97%A5%E6%9C%AC%E5%A4%A7%E9%9C%87%E7%81%BD&maximumRecords=100&recordPacking=json
※maximumRecordsに最大件数を超える数を指定するとエラーになります。
- 発言中に「北海道」「青森」の両方が含まれており(any=北海道 青森)、かつ、会議名に「文部」又は「文教」が含まれている(nameOfMeeting=文部 文教)会議録を、11件目から(startRecord=11)5件分(maximumRecords=5)
- (1) 会議単位簡易出力
- https://kokkai.ndl.go.jp/api/meeting_list?any=%E5%8C%97%E6%B5%B7%E9%81%93%20%E9%9D%92%E6%A3%AE&nameOfMeeting=%E6%96%87%E9%83%A8%20%E6%96%87%E6%95%99&startRecord=11&maximumRecords=5
- (2) 会議単位出力
- https://kokkai.ndl.go.jp/api/meeting?any=%E5%8C%97%E6%B5%B7%E9%81%93%20%E9%9D%92%E6%A3%AE&nameOfMeeting=%E6%96%87%E9%83%A8%20%E6%96%87%E6%95%99&startRecord=11&maximumRecords=5
- (3) 発言単位出力
- https://kokkai.ndl.go.jp/api/speech?any=%E5%8C%97%E6%B5%B7%E9%81%93%20%E9%9D%92%E6%A3%AE&nameOfMeeting=%E6%96%87%E9%83%A8%20%E6%96%87%E6%95%99&startRecord=11&maximumRecords=5
※発言(any)に半角スペース区切りで複数の語を指定した場合はAND検索、会議名(nameOfMeeting)に半角スペース区切りで複数の語を指定した場合はOR検索になります。
- 会議開催日が「1980年」(from=1980-01-01)(until=1980-12-31)、かつ、発言者名に「田中」又は「鈴木」が含まれている(speaker=田中 鈴木)会議録
- (1) 会議単位簡易出力
- https://kokkai.ndl.go.jp/api/meeting_list?from=1980-01-01&until=1980-12-31&speaker=%E7%94%B0%E4%B8%AD%20%E9%88%B4%E6%9C%A8
- (2) 会議単位出力
- https://kokkai.ndl.go.jp/api/meeting?from=1980-01-01&until=1980-12-31&speaker=%E7%94%B0%E4%B8%AD%20%E9%88%B4%E6%9C%A8
- (3) 発言単位出力
- https://kokkai.ndl.go.jp/api/speech?from=1980-01-01&until=1980-12-31&speaker=%E7%94%B0%E4%B8%AD%20%E9%88%B4%E6%9C%A8
※発言者(speaker)に半角スペース区切りで複数の語を指定した場合はOR検索になります。なお、特定の日付の会議録を取得したい場合には、fromとuntilに同じ日付を指定してください。
- 「第1回」から「第3回」国会(sessionFrom=1)(sessionTo=3)の、「両院協議会」(nameOfHouse=両院協議会)の「第1号」(issueFrom=1)の会議録
- (1) 会議単位簡易出力
- https://kokkai.ndl.go.jp/api/meeting_list?sessionFrom=1&sessionTo=3&nameOfHouse=%E4%B8%A1%E9%99%A2%E5%8D%94%E8%AD%B0%E4%BC%9A&issueFrom=1
- (2) 会議単位出力
- https://kokkai.ndl.go.jp/api/meeting?sessionFrom=1&sessionTo=3&nameOfHouse=%E4%B8%A1%E9%99%A2%E5%8D%94%E8%AD%B0%E4%BC%9A&issueFrom=1
- (3) 発言単位出力
- https://kokkai.ndl.go.jp/api/speech?sessionFrom=1&sessionTo=3&nameOfHouse=%E4%B8%A1%E9%99%A2%E5%8D%94%E8%AD%B0%E4%BC%9A&issueFrom=1
※国会回次(sessionFrom、sessionTo)及び号数(issueFrom、issueTo)の場合、いずれか一方だけを指定すると、その回次・号数の会議録だけが検索対象になります。両方を指定すると、指定した範囲が検索対象になります。
- 発言中に「科学技術」が含まれている(any=科学技術)会議録
4. 利用条件・免責事項
- 「国立国会図書館ウェブサイト利用規約」 に従ってご利用ください。このデータベースについての注意点は次のとおりです。
- 個々の発言のうち国立国会図書館長を含む国立国会図書館職員の発言及びデータベース自体の著作権は国立国会図書館に帰属しています。
- その他の発言の著作権は個々の発言者に帰属し、その利用については、原則として、著作権者の許諾が必要となります。ただし、著作権の保護期間が満了している発言者の場合や、著作権法の権利制限規定が適用される場合(私的使用のための複製、引用、政治上の演説又は陳述に該当する箇所の利用、報道、電子計算機による情報解析等)には、著作権法の定める条件に従って、著作権者の許諾を得ることなくご利用いただけます。著作権者の許諾の要否、許諾を得ることなく利用できる場合の利用条件等については、ご自身でご確認ください。
- このシステムの運用に影響のあるような負荷のかかる利用(短時間での大量アクセス等)はご遠慮ください。安定運用に支障をきたすと当館が判断した場合には、予告なくアクセスを遮断する等の措置をとることがあります。
- 機械的なアクセスを行う場合、多重リクエストは避けてください。また、データを取得し終えてから数秒程度空けて次のリクエストを行うようにしてください。
- APIの利用には、手続き等は必要ありません。利用に係るご感想は、アンケートフォームからお知らせください。その他のお問い合わせは、お問い合わせフォームから、「国会会議録検索システムAPI」に関するお問い合わせである点を明記して送信してください。
- このシステムを利用して行う一切の行為に関する著作権法上その他の問題については、利用される方においてその責任を負うものとし、国立国会図書館は何ら責任を負うものではありません。第三者との間に問題が生じた場合は、利用される方がその責任を負うことになりますこと、ご留意の上、ご利用ください。
5. 詳細仕様
- 検索リクエスト
- アクセスURL
- 会議単位簡易出力:https://kokkai.ndl.go.jp/api/meeting_list?{検索条件}
- 会議単位出力:https://kokkai.ndl.go.jp/api/meeting?{検索条件}
- 発言単位出力:https://kokkai.ndl.go.jp/api/speech?{検索条件}
- 検索条件
- {検索条件}は「パラメータ名=値」の形式で指定し、UTF-8でURLエンコードしてください。
- 複数のパラメータで検索する場合には、半角の&(U+0026)で接続してください。
- 検索条件部分は全体で2000バイトが上限です。
- 院名、会議名、検索語、発言者名、開会日付/始点、開会日付/終点、発言番号、発言者肩書き、発言者所属会派、発言者役割、発言ID、冊子ID、国会回次From、国会回次To、号数From、号数Toのいずれも指定がなかった場合には、エラーになります。
- 指定可能な検索パラメータ
表1:検索パラメータ 項番 パラメータ名 項目名 指定する値 1 startRecord 開始位置 検索結果の取得開始位置を「1~検索件数」の範囲で指定可能。
省略時のデフォルト値は「1」2 maximumRecords 一回の最大取得件数 一回のリクエストで取得できるレコード数を、会議単位簡易出力、発言単位出力の場合は「1~100」、会議単位出力の場合は「1~10」の範囲で指定可能。
省略時のデフォルト値は、会議単位簡易出力、発言単位出力の場合は「30」、会議単位出力の場合は「3」3 nameOfHouse 院名 院名として「衆議院」「参議院」「両院」「両院協議会」のいずれかを指定可能。「両院」と「両院協議会」の結果は同じ。
省略可(省略時は検索条件に含めない)。また、指定可能な値以外を指定した場合も、検索条件に含めない。4 nameOfMeeting 会議名 本会議、委員会等の会議名(ひらがな可)を指定可能。部分一致検索。半角スペース(U+0020)を区切り文字として複数指定した場合は、指定した語のOR検索となる。
省略可(省略時は検索条件に含めない)。5 any 検索語 発言内容等に含まれる言葉を指定可能。部分一致検索。半角スペース(U+0020)を区切り文字として複数指定した場合は、指定した語のAND検索となる。
省略可(省略時は検索条件に含めない)。6 speaker 発言者名 発言者名(議員名はひらがな可)を指定可能。部分一致検索。半角スペース(U+0020)を区切り文字として複数指定した場合は、指定した語のOR検索となる。
省略可(省略時は検索条件に含めない)。7 from 開会日付/始点 検索対象とする会議の開催日の始点を「YYYY-MM-DD」の形式で指定可能。
省略可(省略時は「0000-01-01」が指定されたものとして検索する)。8 until 開会日付/終点 検索対象とする会議の開催日の終点を「YYYY-MM-DD」の形式で指定可能。
省略可(省略時は「9999-12-31」が指定されたものとして検索する)。9 supplementAndAppendix 追録・附録指定 検索対象を追録・附録に限定するか否かを「true」「false」で指定可能。
省略可(省略時は「false」(限定しない)が指定されたものとして検索する)。10 contentsAndIndex 目次・索引指定 検索対象を目次・索引に限定するか否かを「true」「false」で指定可能。
省略可(省略時は「false」(限定しない)が指定されたものとして検索する)。11 searchRange 議事冒頭・本文指定 検索語(パラメータ名:any)を指定して検索する際の検索対象箇所を「冒頭」「本文」「冒頭・本文」のいずれかで指定可能。
省略可(省略時は「冒頭・本文」が指定されたものとして検索する)。検索語を指定しなかった時は検索条件には含めない。12 closing 閉会中指定 検索対象を閉会中の会議録に限定するか否かを「true」「false」で指定可能。
省略可(省略時は「false」(限定しない)が指定されたものとして検索する)。13 speechNumber 発言番号 発言番号を0以上の整数(例:発言番号10の場合は「speechNumber=10」)で指定可能。完全一致検索。
省略可(省略時は検索条件に含めない)。14 speakerPosition 発言者肩書き 発言者の肩書きを指定可能。部分一致検索。
省略可(省略時は検索条件に含めない)。15 speakerGroup 発言者所属会派 発言者の所属会派を指定可能。部分一致検索(なお、登録されているデータは正式名称のみ)。
省略可(省略時は検索条件に含めない)。16 speakerRole 発言者役割 発言者の役割として「証人」「参考人」「公述人」のいずれかを指定可能。
省略可(省略時は検索条件に含めない)。指定可能な値以外を指定した場合はエラーになる。17 speechID 発言ID 発言を一意に識別するIDとして、「会議録ID(パラメータ名:issueID。21桁の英数字)_発言番号(会議録テキスト表示画面で表示されている各発言に付されている、先頭に0を埋めて3桁にした数字。4桁の場合は4桁の数字)」の書式で指定可能(例:「100105254X00119470520_000」)。完全一致検索。
省略可(省略時は検索条件に含めない)。書式が適切でない場合にはエラーになる。18 issueID 会議録ID 会議録(冊子)を一意に識別するIDとして、会議録テキスト表示画面の「会議録テキストURLを表示」リンクで表示される21桁の英数字で指定可能(例:「100105254X00119470520」)。完全一致検索。
省略可(省略時は検索条件に含めない)。書式が適切でない場合にはエラーになる。19 sessionFrom 国会回次From 検索対象とする国会回次の始まり(開始回)を3桁までの自然数で指定可能。国会回次Toと組み合わせて指定した場合には範囲指定検索、国会回次From単独で指定した場合は当該の回次のみを完全一致検索。
省略可(省略時は検索条件に含めない)。20 sessionTo 国会回次To 検索対象とする国会回次の終わり(終了回)を3桁までの自然数で指定可能。国会回次Fromと組み合わせて指定した場合には範囲指定検索、国会回次To単独で指定した場合は当該の回次のみを完全一致検索。
省略可(省略時は検索条件に含めない)。21 issueFrom 号数From 検索対象とする号数の始まり(開始号)を3桁までの整数で指定可能(目次・索引・附録・追録は0号扱い)。号数Toと組み合わせて指定した場合には範囲指定検索、号数From単独で指定した場合は当該の回次のみを完全一致検索。
省略可(省略時は検索条件に含めない)。22 issueTo 号数To 検索対象とする号数の終わり(終了号)を3桁までの整数で指定可能(目次・索引・附録・追録は0号扱い)。号数Fromと組み合わせて指定した場合には範囲指定検索、号数To単独で指定した場合は当該の回次のみを完全一致検索。
省略可(省略時は検索条件に含めない)。23 recordPacking 応答形式 検索リクエストに対する応答ファイルの形式として、「xml」「json」のいずれかを指定可能。
省略可(省略時は「xml」が指定されたものとして検索する)。
- アクセスURL
- 返戻結果
返戻結果の書式は次のとおりです。
- XML形式(会議単位出力、会議単位簡易出力)
<?xml version="1.0"?> <data> <numberOfRecords> 総結果件数 </numberOfRecords> <numberOfReturn> 返戻件数 </numberOfReturn> <startRecord> 開始位置 </startRecord> <nextRecordPosition> 次開始位置(※存在する場合のみ) </nextRecordPosition> <records> <record> <recordData> <meetingRecord> <issueID> 会議録ID </issueID> <imageKind> イメージ種別(会議録・目次・索引・附録・追録) </imageKind> <searchObject> 検索対象箇所(議事冒頭・本文) </searchObject> <session> 国会回次 </session> <nameOfHouse> 院名 </nameOfHouse> <nameOfMeeting> 会議名 </nameOfMeeting> <issue> 号数 </issue> <date> 開催日付 </date> <closing> 閉会中フラグ </closing> <speechRecord> <speechID> 発言ID </speechID> <speechOrder> 発言番号 </speechOrder> <speaker> 発言者名 </speaker> <speakerYomi> 発言者よみ(※会議単位出力のみ) </speakerYomi> <speakerGroup> 発言者所属会派(※会議単位出力のみ) </speakerGroup> <speakerPosition> 発言者肩書き(※会議単位出力のみ) </speakerPosition> <speakerRole> 発言者役割(※会議単位出力のみ) </speakerRole> <speech> 発言(※会議単位出力のみ) </speech> <startPage> 発言が掲載されている開始ページ(※会議単位出力のみ) </startPage> <createTime> レコード登録日時(※会議単位出力のみ) </createTime> <updateTime> レコード更新日時(※会議単位出力のみ) </updateTime> <speechURL> 発言URL </speechURL> </speechRecord> <speechRecord> (次の発言情報) </speechRecord> <meetingURL> 会議録テキスト表示画面のURL </meetingURL> <pdfURL> 会議録PDF表示画面のURL(※存在する場合のみ) </pdfURL> </meetingRecord> </recordData> </record> <record> (次の会議録情報) </record> </records> </data>
- XML形式(発言単位出力)
<?xml version="1.0"?> <data> <numberOfRecords> 総結果件数 </numberOfRecords> <numberOfReturn> 返戻件数 </numberOfReturn> <startRecord> 開始位置 </startRecord> <nextRecordPosition> 次開始位置(※存在する場合のみ) </nextRecordPosition> <records> <record> <recordData> <speechRecord> <speechID> 発言ID </speechID> <issueID> 会議録ID </issueID> <imageKind> イメージ種別(会議録・目次・索引・附録・追録) </imageKind> <searchObject> 検索対象箇所(議事冒頭・本文) </searchObject> <session> 国会回次 </session> <nameOfHouse> 院名 </nameOfHouse> <nameOfMeeting> 会議名 </nameOfMeeting> <issue> 号数 </issue> <date> 開催日付 </date> <closing> 閉会中フラグ </closing> <speechOrder> 発言番号 </speechOrder> <speaker> 発言者名 </speaker> <speakerYomi> 発言者よみ </speakerYomi> <speakerGroup> 発言者所属会派 </speakerGroup> <speakerPosition> 発言者肩書き </speakerPosition> <speakerRole> 発言者役割 </speakerRole> <speech> 発言 </speech> <startPage> 発言が掲載されている開始ページ </startPage> <speechURL> 発言URL </speechURL> <meetingURL> 会議録テキスト表示画面のURL </meetingURL> <pdfURL> 会議録PDF表示画面のURL(※存在する場合のみ) </pdfURL> </speechRecord> </recordData> </record> <record> (次の発言情報) </record> </records> </data>
- JSON形式(会議単位出力、会議単位簡易出力)
{ "numberOfRecords": 総結果件数 , "numberOfReturn": 返戻件数 , "startRecord": 開始位置 , "nextRecordPosition": 次開始位置 , "meetingRecord":[ { "issueID": 会議録ID , "imageKind": イメージ種別(会議録・目次・索引・附録・追録) , "searchObject": 検索対象箇所(議事冒頭・本文) , "session": 国会回次 , "nameOfHouse": 院名 , "nameOfMeeting": 会議名 , "issue": 号数 , "date": 開催日付 , "closing": 閉会中フラグ , "speechRecord":[ { "speechID": 発言ID , "speechOrder": 発言番号 , "speaker": 発言者名 , "speakerYomi": 発言者よみ(※会議単位出力のみ) , "speakerGroup": 発言者所属会派(※会議単位出力のみ) , "speakerPosition": 発言者肩書き(※会議単位出力のみ) , "speakerRole": 発言者役割(※会議単位出力のみ) , "speech": 発言(※会議単位出力のみ) , "startPage": 発言が掲載されている開始ページ(※会議単位出力のみ) , "createTime": レコード登録日時(※会議単位出力のみ) , "updateTime": レコード更新日時(※会議単位出力のみ) , "speechURL": 発言URL , }, { (次の発言情報) } ], "meetingURL": 会議録テキスト表示画面のURL , "pdfURL": 会議録PDF表示画面のURL(※存在する場合のみ) , }, { (次の会議録情報) } ] }
- JSON形式(発言単位出力)
{ "numberOfRecords": 総結果件数 , "numberOfReturn": 返戻件数 , "startRecord": 開始位置 , "nextRecordPosition": 次開始位置 , "speechRecord":[ { "speechID": 発言ID , "issueID": 会議録ID , "imageKind": イメージ種別(会議録・目次・索引・附録・追録) , "searchObject": 検索対象箇所(議事冒頭・本文) , "session": 国会回次 , "nameOfHouse": 院名 , "nameOfMeeting": 会議名 , "issue": 号数 , "date": 開催日付 , "closing": 閉会中フラグ , "speechOrder": 発言番号 , "speaker": 発言者名 , "speakerYomi": 発言者よみ , "speakerGroup": 発言者所属会派 , "speakerPosition": 発言者肩書き , "speakerRole": 発言者役割 , "speech": 発言 , "startPage": 発言が掲載されている開始ページ , "speechURL": 発言URL , "meetingURL": 会議録テキスト表示画面のURL , "pdfURL": 会議録PDF表示画面のURL(※存在する場合のみ) , }, { (次の発言情報) } ] }
- XML形式(会議単位出力、会議単位簡易出力)
- エラー発生時の結果
エラー発生時の返戻結果の書式は次のとおりです。
- XML形式
<?xml version="1.0"?> <data> <diagnostics> <diagnostic> <message> エラーメッセージ </message> <details> エラーメッセージの詳細(※検索条件の入力誤りの場合のみ) </details> <details> エラーメッセージの詳細(※検索条件の入力誤りが複数ある場合のみ) </details> </diagnostic> </diagnostics> </data>
- JSON形式
{ "message": エラーメッセージ , "details":[ "エラーメッセージの詳細(※検索条件の入力誤りの場合のみ)", "エラーメッセージの詳細(※検索条件の入力誤りが複数ある場合のみ)" ] }
エラーメッセージは次のとおりです。これ以外のエラーメッセージが表示された場合は、表示されたメッセージを添えて、「4. 利用条件・免責事項」の問い合わせ先までお問い合わせください。
表2:エラーメッセージ エラーコード メッセージ内容 19001 現在、込み合っております。もうしばらくしてから再度アクセスしてください。 19004 startRecordには 1から検索件数までの値を指定してください。 19005 maximumRecordsには1~100の値を指定してください。 19006 maximumRecordsには1~10の値を指定してください。 19007 検索条件を指定してください。 19011 検索条件の入力に誤りがあります。 19012 from:開会日付をYYYY-MM-DD形式で入力してください。 19013 until:開会日付をYYYY-MM-DD形式で入力してください。 19014 fromはuntil以下、もしくはuntilはfrom以上の日付で入力してください。 19018 from:存在しない日付です。検索条件を見直し、再度検索してください。 19019 until:存在しない日付です。検索条件を見直し、再度検索してください。 19020 入力可能文字数を超過しています。検索条件を見直してください。 - XML形式