API リファレンス
GET /companies/{companyId}/filings
1 社の EDINET filing 一覧を返す contract を説明します。
このページの内容11項目
GET /api/signal-foundry/companies/{companyId}/filings は、1 社の EDINET filing list を返します。filing compare に進む前の一覧取得は必ずここから始めてください。
契約サマリー
| Field | Value |
|---|---|
| Method | GET |
| Path | /api/signal-foundry/companies/{companyId}/filings |
| Auth | production は API key 必須 |
| Usage | request usage / rate limit 対象 |
| Credit | data credit は消費しない |
| CLI | sf company filings <companyId> --json |
| Next | filing detail / compare へ進む |
この endpoint の job は、解決済み company_id から比較可能な filing 候補を選ぶことです。社名や検索語しかない場合は、先に GET /companies または sf companies search <query> --json で company_id を解決してください。
リクエスト
HTTP
curl "https://signal-foundry.app/api/signal-foundry/companies/jpx_5574/filings?document_type=annual_report&limit=5" \ -H "Authorization: Bearer <SIGNAL_FOUNDRY_API_KEY>"
CLI
sf company filings jpx_5574 --document-type annual_report --limit 5 --json
見る key:
filings[].filing_idfilings[].doc_idfilings[].document_typefilings[].submitted_atfilings[].artifact_healthfilings[].fact_statsfilings[].previous_comparable_filingmeta.returned_filingsmeta.has_more
クエリパラメータ
| Param | Type | Default | Notes |
|---|---|---|---|
document_type | array | [] | annual_report / semi_annual_report / quarterly_report / extraordinary_report |
limit | integer | 20 | 1..100 |
offset | integer | 0 | 0..10000 |
レスポンス
中心フィールド
companyfilings[]filing_iddoc_iddocument_typesubmitted_atdisclosed_dateartifact_healthsummary_metricsfact_statssegment_metricssection_statsprevious_comparable_filingartifacts
metafilters.document_typesrequested_identifierresolved_byreturned_filingshas_more
previous_comparable_filing は compare の既定比較先として使われます。artifacts には PDF / XBRL 由来の inventory 情報が入り、artifact_health は failed / expected artifact を先に見るための要約です。
例
{
"company": {
"company_id": "jpx_5574",
"display_name": "ABEJA, Inc."
},
"filings": [
{
"filing_id": "edinet_fil_S100XYUO",
"doc_id": "S100XYUO",
"document_type": "annual_report",
"period_end": "2025-08-31",
"submitted_at": "2025-11-28T00:00:00+09:00",
"artifact_health": {
"failed_count": 0,
"failed_fetch_error_codes": [],
"pending_count": 0,
"states": {
"fetched": 2
}
},
"summary_metrics": {
"revenue": {
"value": 1234567890,
"unit": "JPY",
"relative_year": 0
}
},
"fact_stats": {
"total_rows": 320,
"distinct_metric_keys": 180,
"segment_fact_rows": 12
},
"segment_metrics": [],
"section_stats": {
"section_keys": ["business_risks", "strategy"],
"total_rows": 2
},
"previous_comparable_filing": {
"filing_id": "edinet_fil_S100PREV",
"doc_id": "S100PREV",
"document_type": "annual_report"
},
"artifacts": [
{
"artifact_type": "source_document",
"inventory_state": "fetched",
"file_extension": "pdf"
}
]
}
],
"meta": {
"company_id": "jpx_5574",
"filters": {
"document_types": ["annual_report"]
},
"returned_filings": 1,
"has_more": false,
"requested_identifier": "jpx_5574",
"resolved_by": {
"field": "company_id",
"value": "jpx_5574"
}
}
}
filings[].previous_comparable_filing が null でも、一覧取得自体は成功です。前回 filing を自動選択できないだけなので、compare 時に against を明示してください。
エラー
| Status | Code | Meaning |
|---|---|---|
400 | invalid_query | document_type, limit, offset が schema に合わない |
401 | invalid_api_key など | API key が無効、失効、または revoke 済み |
404 | company_not_found | {companyId} を canonical company に解決できない |
429 | rate_limit_exceeded | API key の rate limit を超えた |
復旧方法
company_not_found が返る場合:
sf companies search <query> --jsonを実行します。companies[].company.company_idを確認します。- 解決した
company_idでsf company filings <companyId> --jsonを実行します。
filings が空の場合:
document_typefilter を外して再実行します。meta.returned_filingsとmeta.has_moreを確認します。- それでも 0 件なら、対象会社が EDINET 提出会社ではない可能性があります。0 件を filing failure として扱わず、profile / observations 側の evidence で補完してください。
rate_limit_exceeded が返る場合は、Retry-After を見て待機します。同じ request を短時間に繰り返さないでください。
次に進む先
- 1 filing の facts と sections を読みたい:
GET /companies/{companyId}/filings/{filingId} - 前期比較したい:
GET /companies/{companyId}/filings/{filingId}/compare