ホーム / お役立ち記事 / EDINET APIの取り方と活用法|提出書類の一覧・有価証券報告書の従業員数と売上

Knowledge

EDINET APIの​取り方と​活用法|​提出書類の​一覧・​有​価証券報告書の​従業員数と​売上

EDINET APIは、EDINETに提出された開示書類の一覧と書類そのものを、プログラムで取るための金融庁のAPIで、使うにはAPIキーが要ります。2026年11月2日に弊社が1週間分の一覧を取ると1,162件でした。キーの取り方、呼び方、返る項目、有価証券報告書のCSVの読み方と落とし穴、利用の条件を、取った記録と公式の資料でまとめます。

著者: 村山 悠太(ゴムマリ) 最終更新: 2026年11月

「EDINET API 提出書類の一覧」の横棒グラフ。2026年10月26日〜11月1日の提出1,162件のうち多い6種類=臨時報告書285件・有価証券報告書177件・有価証券届出書149件・大量保有報告書140件・半期報告書93件・確認書82件

この記事でわかること

  • EDINET APIは書類一覧APIと書類取得APIの2つで、どちらもAPIキーが要る。2026年10月26日から11月1日の提出書類の一覧は1,162件で、423の提出者が出していた
  • その週の有価証券報告書177件のうち140件はファンドコードの付いた特定有価証券(投資信託など)の書類で、会社の有価証券報告書は37件だった。CSVを取った36本のすべてに従業員数の要素があった
  • CSVはタブ区切りのUTF-16LEで、同じ行が重複して出る・連結か個別かは列でなくコンテキストIDで分かる・値に全角の「-」が入る、の3つを踏まえて読む
目次
  1. 使いどころは3つ:提出書類の一覧・有価証券報告書の数字・決算日
  2. 取り方:アカウントを作り、APIキーをURLに付けて呼ぶ
  3. 規模感:1週間で1,162件、6月26日の一覧は1,267件
  4. 取れる項目・取れない項目
  5. 差分の取り方:当日分は約1分ごと、過去分は毎日24時過ぎに差し替え
  6. 落とし穴:実際に取って踏んだもの
  7. 規約:PDL1.0に準拠し、機械で取るときはAPIを使う
  8. 次の一歩

EDINET APIは、EDINETに提出された開示書類の一覧と書類そのものを、プログラムで取るための金融庁のAPIです。使うにはアカウントを作ってAPIキーを発行します。

2026年11月2日に弊社が10月26日から11月1日の1週間分の提出書類の一覧を取ると、1,162件でした。

この記事は、営業リストや競合の調査に開示書類を使いたい担当者に向けて、取り方・項目・落とし穴・規約を、取った記録と公式の資料でまとめます。

使いどころは​3つ:提出書類の​一覧・​有​価証券報告書の​数字・​決算日

EDINETとは、有価証券報告書などの開示書類に関する、金融庁の電子開示システムです。EDINET APIは、書類一覧APIと書類取得APIの2つでできています(EDINET API仕様書 Version 2・1-2-1)。

有価証券報告書の本文をAIで読んで数える使い方は、弊社の有価証券報告書の人手不足とAIの調査で実例を載せています。この記事は、その手前の取り方と、営業や調査の数字の取り方に絞ります。

1. その日に出た書類と、出した会社を拾う

書類一覧APIに日付を1つ渡すと、その日に提出の処理がされた書類などが、書類の種類・提出者・提出日時つきで返ります。10月26日から11月1日の1,162件は、423の提出者が出していました。

種類で多かったのは、臨時報告書の285件、有価証券報告書の177件、有価証券届出書の149件、大量保有報告書の140件です。

臨時報告書には提出事由が「第19条第2項第9号の2」のような条文の番号で入るので、追っている会社の動きを種類と事由で拾えます。

2. 有価証券報告書から、従業員数と売上を抜く

書類取得APIで有価証券報告書のCSVを取ると、従業員数や売上高などが要素ごとの行で入っています。その週の会社の有価証券報告書のうちCSVを取った36本は、36本とも従業員数の要素がありました。

経営指標等の売上高の要素が当期にあったのは33本(連結を作る会社は連結、作らない会社は個別で数えた)、提出会社の平均年間給与の要素は35本です。有価証券報告書を出す会社の規模の列を、自分で数字から作れます。

3. 決算日から、有価証券報告書の出る時期を読む

EDINETコードリストには、提出者ごとの決算日・業種・法人番号の列があります。2026年11月2日の一覧で上場区分が「上場」の3,814のうち、決算日が3月31日の提出者は2,033でした。

10月26日からの週に出た会社の有価証券報告書37件のうち、34件は事業年度の終わりが2026年7月31日でした。6月26日の1日に出た会社の有価証券報告書188件では、181件が3月31日でした。

決算日が分かれば、新しい数字が出る時期の当たりを付けられます。

できないこと

  • 書類を出していない会社取れるのは、EDINETに書類を出している提出者の分だけです。
  • 閲覧期間を過ぎた書類会社の有価証券報告書(府令010)の閲覧期間は10年で、期間を過ぎた書類は書類取得APIで取れません(仕様書 1-2-2・3-1-4)。
  • ブラウザからの呼び出しクロスドメインの通信を許可しないため、ブラウザ上のJavaScriptからは呼べません(仕様書 3-1-1)。
  • CSVの無い書類その週の外国会社の有価証券報告書1件はCSVもXBRLも無く、CSVを指定して呼ぶと「Not Found」が返りました。

取り方​:アカウントを​作り、​APIキーを​URLに​付けて​呼ぶ

APIキーは、EDINETの閲覧サイトの「ログイン」から作るアカウントで発行します。仕様書の2章の手順は次のとおりです。

  • ポップアップの許可ブラウザで、https://api.edinet-fsa.go.jp のポップアップを先に許可します。発行の画面がポップアップで開くためです。
  • アカウントの作成サインアップの画面でメールアドレスを入れ、届いた確認コードを入れてから、パスワードを決めます。パスワードは12文字以上で、小文字・大文字・数字・記号のうち3種類以上が要ります。
  • 多要素認証電話番号を登録し、SMSか自動音声で本人を確かめます。
  • キーの発行発行の画面で連絡先を登録すると、APIキーが表示されます。仕様書は、規約に沿わない使い方のおそれがある利用者に、連絡先へ確かめることがあるとしています。

この記事で使ったAPIキーは、2026年10月にこの手順で発行した物です。発行の時は多要素認証をSMSで行い、ログインの後に画面が真っ白になったので、ポップアップを許可してから発行しました。

真っ白な画面は、EDINETのFAQにも、ポップアップの許可が要る事例として載っています。キーを再発行すると前のキーは使えなくなり、2年以上使っていないキーは自動で削除されます(仕様書 2-3-2)。

書類一覧APIは、日付と取得情報(type)とAPIキーを付けて呼びます。typeは1が件数などのメタデータだけ、2が一覧とメタデータです。

https://api.edinet-fsa.go.jp/api/v2/documents.json?date=2026-10-30&type=2&Subscription-Key=<APIキー>

書類取得APIは、一覧の書類管理番号(docID)を指定し、typeで中身を選びます。1が提出本文書と監査報告書(XBRLを含むZIP)、2がPDF、5がCSVのZIPです。

https://api.edinet-fsa.go.jp/api/v2/documents/<書類管理番号>?type=5&Subscription-Key=<APIキー>

キーはURLの引数に載るので、プログラムの中に書かず、環境変数から読みます。弊社の呼び方は次の形で、1回ごとに3秒あけました。

import os, time, urllib.request

KEY = os.environ["EDINET_API_KEY"]
API = "https://api.edinet-fsa.go.jp/api/v2"

def get(path):
    with urllib.request.urlopen(f"{API}/{path}&Subscription-Key={KEY}") as r:
        body, ctype = r.read(), r.headers.get("Content-Type")
    time.sleep(3)
    return body, ctype

body, ctype = get("documents.json?date=2026-10-30&type=2")

規模感:1週間で​1,162件、​6月26日の​一覧は​1,267件

2026年11月2日に取った、10月26日から11月1日の書類一覧の件数は次のとおりです。

日付 件数
10月26日(月) 170
10月27日(火) 251
10月28日(水) 206
10月29日(木) 209
10月30日(金) 326
10月31日(土) 0
11月1日(日) 0

10月30日の一覧は、JSONで319,894バイトでした。比べるために取った6月26日の一覧は1,267件・1,204,959バイトで、そのうち有価証券報告書が217件ありました。

書類の大きさは、同じ有価証券報告書1本で、XBRLを含むZIPが793,740バイト、PDFが839,420バイト、CSVのZIPが93,537バイトでした。CSVのZIPは36本で合わせて3,461,652バイトです。

取れる​項目・​取れない​項目

書類一覧の1件には29の項目が入っています。営業や調査でよく使うのは次の項目です。

項目 中身
docID 書類管理番号(書類取得APIに渡す)
edinetCode 提出者のEDINETコード(6桁)
secCode 証券コード(5桁)
JCN 提出者の法人番号(13桁)
filerName 提出者名
ordinanceCode・formCode 府令コード・様式コード
docTypeCode 書類種別コード(有価証券報告書は120)
periodStart・periodEnd 期間(有価証券報告書と半期報告書では事業年度)
submitDateTime 提出日時
csvFlag・xbrlFlag CSV・XBRLの有無

仕様書では、29項目のうち連番(seqNumber)だけが数で、ほかは文字列です。値の無い項目はnullで返り、週の1,162行のうち値の入っていた行は次のとおりでした。

項目 値のあった行
JCN(法人番号) 1,008
fundCode(ファンドコード) 524
secCode(証券コード) 411
currentReportReason(臨報提出事由) 293
periodStart・periodEnd(期間) 270
parentDocID(親書類管理番号) 266
issuerEdinetCode(発行会社) 196
subjectEdinetCode(公開買付けの対象) 8
subsidiaryEdinetCode(子会社) 5
opeDateTime(操作日時) 3

有価証券報告書のCSVは、1行目が「要素ID」「項目名」「コンテキストID」「相対年度」「連結・個別」「期間・時点」「ユニットID」「単位」「値」の9つの見出しです(書類閲覧操作ガイド 1章 3-2-1)。

本文のCSVは、36本で見出しを除いて701行から1,667行ありました。

取れないものは、閲覧の画面の目次とヘッダーのHTMLです(FAQ API Q4)。書類一覧の提出者名などは提出した時点のもので、社名が変わっても一覧の上は変わりません(仕様書 3-1-8)。今の社名は、EDINETコードリストから引きます。

差分の​取り方​:当日分は​約1分ごと、​過去分は​毎日​24時過ぎに​差し替え

仕様書によると、当日分の一覧は日本時間8時30分過ぎから原則1分ごとに更新され、過去分は毎日24時過ぎに全部の日付が差し替えられます(3-1-3)。

弊社が取った過去の8日分は、どれも書類一覧更新日時が「2026-11-02 00:00」でした。

当日分を何度も取るときは、件数だけを返すtype=1で件数が増えたかを見て、増えていれば一覧を取ります。一覧の連番(seqNumber)は一度付くと変わらないので、前回の最後より大きい連番だけを足します(仕様書 1-2-1・3-1-2-2)。

翌日分の当日ファイルが取れるようになっていれば、前日分は確定したと判断できます(FAQ API Q7)。

落と​し穴:実際に​取って​踏んだ​もの

  • 誤りでもHTTPは200キーを付けずに呼ぶと、HTTPの状態は200のまま、本文のJSONに「StatusCode: 401」が入って返りました。成否は本文の状態の値で見ます。
  • CSVが無いときもHTTPは200CSVの無い書類にtype=5で呼ぶと、HTTPは200で、Content-Typeがapplication/jsonの「Not Found」が返りました。書類が取れたかは、Content-Typeで分けます(仕様書 3-3)。
  • 有価証券報告書にファンドの書類が混ざるその週の有価証券報告書177件のうち140件は府令コード030(特定有価証券)で、どれもファンドコードが付いていました。6月26日は217件のうち27件です。
  • 国内の会社だけに絞る取った一覧では、国内の会社の有価証券報告書は府令コード010・様式コード030000でした。外国会社の分は様式コードが違い(週に1件・6月26日に7件)、この組で絞ると外れます。
  • CSVはタブ区切りのUTF-16LE拡張子はcsvでも、区切りはタブで、文字コードはUTF-16LEです(操作ガイド)。取った36本はどれもBOMで始まっていました。
  • 同じ行が重複して出る36本のどれにも、9つの値がすべて同じ行が2回以上あり、3回出る行も36本すべてにありました。従業員数の行が重なる本もあり、足し上げる前に重なりを除きます。
  • 連結か個別かは列で分からない「連結・個別」の列は、財務諸表(jppfs)以外の要素ではすべて「その他」です。従業員数などは、コンテキストIDの「_NonConsolidatedMember」の有無で連結か個別かを見ます。
  • 値に全角の「-」が入る36本で5,278行の値が全角の「-」でした。操作ガイドが0の意味とする半角の「-」の値は0行で、数値に変える前に扱いを決めます。
  • 会社ごとの要素は項目名が空提出者が独自に足した要素の行は項目名が空で、36本で903行ありました。要素IDの頭が「jpcrp030000-asr_」の行です。
  • 売上の要素名が会社で違う36本のうち33本は経営指標等の売上高の要素でしたが、営業収益・IFRSの売上収益・会社独自の要素で書いた会社が1本ずつありました。

証券コードは、一覧の411件がどれも5桁で、末尾が0でした。普段の4文字の証券コードと結ぶときは、末尾の0を落とすか、4文字の側に0を付けます。

規約:PDL1.0に​準拠し、​機械で​取る​ときは​APIを​使う

EDINETの利用規約には、次の文があります。

  • 著作権について「EDINETウェブサイト(以下「本ウェブサイト」といいます。)で公開している情報(以下「本コンテンツ」といいます。)は、どなたでも「公共データ利用規約(第1.0版)」(PDL1.0)に準拠した利用条件の下で、利用することができます。」
  • 禁止行為「本ウェブサイトのコンテンツを機械的に取得するには、API機能を利用してください」。スクレイピング等で機械的に取ることは、API機能を使う場合などを除いて禁じています。

API機能には別に、短時間の大量のアクセスなど、APIの運用に支障を与える行為の禁止があります。該当すると判断した利用者には、予告なく利用を止めることがあるとしています。

PDL1.0の本文は、本コンテンツを「商用利用も可能です」としています。使うときは出典を書き、編集・加工したときは、出典とは別にそのことと主体を書きます。加工した情報を、国が作った未加工のままのように公表・利用してはいけません。

EDINETタクソノミ・ロゴ・報告書の作成ツールなどは、この規約の適用の外です。PDL1.0は、第三者が権利を持つ部分は利用者の責任で確かめるとしているので、書類の中の写真などを転載するときは別に確かめます。

EDINETコードリストの11,433の提出者のうち、3,254は提出者種別が個人でした。個人の提出者の名前を社外の資料に載せるなら、自社の個人情報の決まりで確かめます。

出典:EDINET閲覧(提出)サイト、PDL1.0

この記事の数字と表は、EDINET APIで取得した書類一覧と有価証券報告書のCSV、EDINETコードリスト(2026年11月2日に利用)をもとにゴムマリ株式会社が作成しました。

次の​一歩

まず、APIキーを発行し、自社の顧客や競合が出した書類を、書類一覧の1週間分で探してみてください。有価証券報告書のCSVから従業員数と売上高を抜けば、上場会社のリストに規模の列が付きます。

受注の実績から、次に当たる先を理由つきで並べるならターゲットリスト作成を承ります。

競合の動きを出典つきで調べるなら市場・競合リサーチです。相談からどうぞ。

関連記事: 有価証券報告書の人手不足とAIの調査/gBizINFOの使い方/法人番号公表サイトのCSVダウンロードと活用法/官公データで企業リストを作る方法

この記事を書いた人

代表 村山悠太のポートレート

村山 悠太(ゴムマリ代表)

ワークスアプリケーションズで大手企業向けERPの営業と導入を担当し、外資系SaaS企業と国内大手放送局で販路と新規事業の立ち上げ、AI学習用データを扱うAIスタートアップ2社でマーケティングと営業を担った。2024年10月から生成AIの実装に入り、いまは大手企業の現場で、AIエージェントを要件定義から運用まで手がけている。

代表の経歴を見る

Ask

この​業務を​頼むなら

専門業務AI-BPO

データエンリッチメント

CRMの取引先データと販売・引き合いの実績、名刺を渡すだけ。会社の単位に整理し、業種・規模・拠点を出典つきで補い、CRMに取り込める形で返します。HP を読んでAIで付ける形は、顧客ランクまで振り分けます。

1件5円〜(分量により)

データエンリッチメントを見る

Related

関連

FAQ

よく​ある​質問

EDINET APIは無料ですか?登録は要りますか?

仕様書と利用規約に料金の記載は無く、弊社は支払いなしで使っています。使うにはアカウントの作成とAPIキーの発行が要り、キーを付けない呼び出しには401の応答が返りました。

非上場の中小企業の情報も取れますか?

取れるのは、EDINETに書類を出している提出者の分だけです。2026年11月2日のEDINETコードリストでは、上場区分が「上場」の提出者が3,814、「非上場」が1,299でした。

どのくらいの間隔で呼べばよいですか?

仕様書に回数の上限の数字はありません。FAQは書類一覧について、1分に1回程度しか更新されないので、1分に1回以下の頻度で効率よく取れるとしています。規約は短時間の大量アクセスを禁じていて、弊社は1回ごとに3秒あけました。

ブラウザのJavaScriptから呼べますか?

呼べません。仕様書は、EDINET APIがクロスドメインの通信を許可せず、ブラウザ上で動くスクリプトからの通信は行えないとしています。サーバーか手元のプログラムから呼びます。

取ったデータを、営業資料や自社のサービスに使ってもよいですか?

EDINETの利用規約は、公開している情報をPDL1.0に準拠した条件で使えるとし、PDL1.0は商用利用も可能としています。使うときは出典を書き、編集・加工したときはそのことと主体も書きます。

ご相談は​こちらから

相談は無料です。

相談する