{"id":8040,"date":"2026-07-16T10:38:00","date_gmt":"2026-07-16T08:38:00","guid":{"rendered":"https:\/\/eodhd.com\/financial-apis\/?p=8040"},"modified":"2026-08-20T09:57:11","modified_gmt":"2026-08-20T07:57:11","slug":"congressional-trades-api","status":"publish","type":"post","link":"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api","title":{"rendered":"Congressional Trades API (beta)"},"content":{"rendered":"\n<p class=\"docs-content__text wp-block-paragraph\">The EODHD Congressional Trades API returns stock-trade disclosures filed by members of the US Congress. Under the STOCK Act, senators and representatives must publicly disclose their securities transactions within 45 days. EODHD collects these filings directly from the two official government portals \u2014 the Senate Electronic Financial Disclosure system and the House Clerk disclosure site \u2014 normalises them into a single schema, and serves both chambers through one endpoint.<\/p>\n\n\n\n<p class=\"docs-content__text wp-block-paragraph\">Each record pairs the trading member with the traded asset and the transaction, and adds fields the raw filings do not provide directly: numeric bounds parsed from the disclosed amount range, the number of days between the trade and its disclosure, a flag for filings that missed the 45-day window, and a link back to the original filing for verification.<\/p>\n\n\n\n<p class=\"docs-content__text wp-block-paragraph\"><!--TOC--><\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"docs-content__heading docs-content__heading--h2 wp-block-heading\" id=\"h-overview\">Overview<\/h2>\n\n\n\n<p class=\"docs-content__text wp-block-paragraph\">The endpoint is reached over HTTPS with a GET request and authenticated by an api_token query parameter, the same token used across the EODHD API. It returns a JSON object with three top-level keys: data (the array of trade records), meta (the number of rows matching the filter across all pages, plus the offset and limit of the page you received), and links (the path of the next page, when one exists). Results are paged with page[offset] and page[limit], where the default page size is 20 rows and the maximum is 100.<\/p>\n\n\n<div class=\"code-block\">\n<pre class=\"docs-content__code-block wp-block-code\"><code class=\"\">https:\/\/eodhd.com\/api\/congressional-trades?api_token=YOUR_TOKEN<\/code><\/pre>\n<\/div>\n\n\n<p class=\"docs-content__text wp-block-paragraph\">Records are always returned newest first, ordered by transaction date descending. The order is fixed \u2014 there is no sort parameter, so narrow a result set with the filters below rather than by re-ordering it. A handful of filings carry a mistyped transaction date that falls in the future, and descending order puts them at the very top of an unfiltered request, so set transaction_date_to to today&#8217;s date when you want a clean first page. JSON is the only output format; there is no fmt parameter, and any unrecognised query parameter is ignored rather than rejected.<\/p>\n\n\n    <div class=\"admonition admonition--note\">\n        <span class=\"admonition__icon\" aria-hidden=\"true\"><svg viewBox=\"0 0 20 20\" fill=\"currentColor\" width=\"20\" height=\"20\"><path fill-rule=\"evenodd\" d=\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z\"\/><\/svg><\/span>\n        <div class=\"admonition__body\">\n\n<p class=\"docs-content__text wp-block-paragraph\">Filter parameters are passed as flat query keys, for example chamber=senate and transaction_type=purchase,sale. Only the two pagination parameters use bracket notation: page[offset] and page[limit]. Recognised parameters are validated at the gateway, so an invalid value returns HTTP 422 before the request reaches the data service.<\/p>\n\n<\/div>\n    <\/div>\n    \n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"docs-content__heading docs-content__heading--h2 wp-block-heading\" id=\"h-coverage-and-history\">Coverage and History<\/h2>\n\n\n\n<p class=\"docs-content__text wp-block-paragraph\">History goes back to the first electronic periodic transaction reports published under the STOCK Act, which took effect in 2012. Both chambers appear from 2012 onwards, with sparse coverage before 2014 while electronic filing was still being adopted. The figures below were measured in August 2026 and grow with every new filing.<\/p>\n\n\n\n<figure class=\"docs-content__table-wrap wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Measure<\/th><th>Value<\/th><\/tr><\/thead><tbody><tr><td>Earliest transaction<\/td><td>14 June 2012<\/td><\/tr><tr><td>Most recent transaction<\/td><td>6 August 2026, disclosed 17 August 2026<\/td><\/tr><tr><td>Total trade records<\/td><td>45,561<\/td><\/tr><tr><td>House \/ Senate<\/td><td>31,611 \/ 13,878<\/td><\/tr><tr><td>Purchases \/ sales \/ exchanges<\/td><td>23,068 \/ 22,177 \/ 316<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"docs-content__text wp-block-paragraph\">Annual volume is sparse at the start and then becomes continuous: 2012 contributes 8 trades and 2013 contributes 123. From 2014 the record runs without gaps \u2014 1,486 trades that year, then roughly 2,900 to 4,800 per year through 2024, with 2025 the heaviest year so far at 7,379. For a study that needs a uniform history, 2014 is the practical starting point; 2012 and 2013 are better treated as a fragment than as full years.<\/p>\n\n\n\n<p class=\"docs-content__text wp-block-paragraph\">Every count above can be reproduced from the API itself, so you never have to rely on this page being current. Request a date window and read total from the meta object \u2014 this returns the number of trades that took place during the 2025 calendar year:<\/p>\n\n\n<div class=\"code-block\">\n<pre class=\"docs-content__code-block wp-block-code\"><code class=\"\">https:\/\/eodhd.com\/api\/congressional-trades?api_token=YOUR_TOKEN&amp;transaction_date_from=2025-01-01&amp;transaction_date_to=2025-12-31&amp;page%5Blimit%5D=1<\/code><\/pre>\n<\/div>\n\n\n<p class=\"docs-content__text wp-block-paragraph\">Freshness follows the source, not the market. A trade appears once the member files it, and the STOCK Act allows up to 45 days for that, so the newest transaction date in the feed trails the current date by days to weeks. Filings are collected four times on each weekday, at 00:00, 06:00, 12:00 and 19:00 UTC, with a separate reconciliation pass at 03:00 UTC that re-reads recent filings and picks up amendments.<\/p>\n\n\n    <div class=\"admonition admonition--tip\">\n        <span class=\"admonition__icon\" aria-hidden=\"true\"><svg viewBox=\"0 0 20 20\" fill=\"currentColor\" width=\"20\" height=\"20\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z\"\/><\/svg><\/span>\n        <div class=\"admonition__body\">\n\n<p class=\"docs-content__text wp-block-paragraph\">To load the full history once, page through the endpoint with no date filter except transaction_date_to set to today, using the maximum page size of 100 and following the next link until it is absent. After that, refresh a rolling recent window rather than only appending: a filing amended at the source is corrected in place, so rows you already hold can change. For backtesting, remember that a trade only becomes public on its disclosure date \u2014 filter on disclosure_date_from and disclosure_date_to to reconstruct what was actually knowable at a point in time, and treat transaction_date as the event date rather than the date the information was available.<\/p>\n\n<\/div>\n    <\/div>\n    \n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"docs-content__heading docs-content__heading--h2 wp-block-heading\" id=\"h-request\">Request<\/h2>\n\n\n\n<p class=\"docs-content__text wp-block-paragraph\">All parameters are optional except api_token. Filters combine with logical AND, and the member, date-range, symbol, and transaction-type filters can be used together to narrow the result set.<\/p>\n\n\n\n<h4 class=\"docs-content__heading docs-content__heading--h4 wp-block-heading\" id=\"h-parameters\">Parameters<\/h4>\n\n\n<div class=\"docs-parameters\">\n    \n<div class=\"docs-parameters__item\">\n    <div class=\"docs-parameters__name\">\n                    <code class=\"docs-parameters__ident\">api_token<\/code>\n        \n                    <span class=\"docs-parameters__type\">string<\/span>\n        \n        <span class=\"docs-parameters__badge docs-parameters__badge--required\">\n            required        <\/span>\n    <\/div>\n\n    <div class=\"docs-parameters__desc\">\n        <span class=\"docs-parameters__desc-text\">Your EODHD API token<\/span>\n            <\/div>\n<\/div>\n\n\n<div class=\"docs-parameters__item\">\n    <div class=\"docs-parameters__name\">\n                    <code class=\"docs-parameters__ident\">symbol<\/code>\n        \n                    <span class=\"docs-parameters__type\">string<\/span>\n        \n        <span class=\"docs-parameters__badge docs-parameters__badge--optional\">\n            optional        <\/span>\n    <\/div>\n\n    <div class=\"docs-parameters__desc\">\n        <span class=\"docs-parameters__desc-text\">Restrict to a single ticker symbol, for example AAPL. Records whose asset carries no ticker are excluded by this filter<\/span>\n            <\/div>\n<\/div>\n\n\n<div class=\"docs-parameters__item\">\n    <div class=\"docs-parameters__name\">\n                    <code class=\"docs-parameters__ident\">chamber<\/code>\n        \n                    <span class=\"docs-parameters__type\">enum<\/span>\n        \n        <span class=\"docs-parameters__badge docs-parameters__badge--optional\">\n            optional        <\/span>\n    <\/div>\n\n    <div class=\"docs-parameters__desc\">\n        <span class=\"docs-parameters__desc-text\">Chamber of Congress, lower case. Allowed values: senate, house<\/span>\n            <\/div>\n<\/div>\n\n\n<div class=\"docs-parameters__item\">\n    <div class=\"docs-parameters__name\">\n                    <code class=\"docs-parameters__ident\">bioguide_id<\/code>\n        \n                    <span class=\"docs-parameters__type\">string<\/span>\n        \n        <span class=\"docs-parameters__badge docs-parameters__badge--optional\">\n            optional        <\/span>\n    <\/div>\n\n    <div class=\"docs-parameters__desc\">\n        <span class=\"docs-parameters__desc-text\">Congressional Biographical Directory ID of a single member, for example S000250. Format is one upper-case letter followed by six digits<\/span>\n            <\/div>\n<\/div>\n\n\n<div class=\"docs-parameters__item\">\n    <div class=\"docs-parameters__name\">\n                    <code class=\"docs-parameters__ident\">transaction_type<\/code>\n        \n                    <span class=\"docs-parameters__type\">enum<\/span>\n        \n        <span class=\"docs-parameters__badge docs-parameters__badge--optional\">\n            optional        <\/span>\n    <\/div>\n\n    <div class=\"docs-parameters__desc\">\n        <span class=\"docs-parameters__desc-text\">One or more transaction types, comma-separated, for example purchase,sale. Allowed values: purchase, sale, exchange<\/span>\n            <\/div>\n<\/div>\n\n\n<div class=\"docs-parameters__item\">\n    <div class=\"docs-parameters__name\">\n                    <code class=\"docs-parameters__ident\">transaction_date_from<\/code>\n        \n                    <span class=\"docs-parameters__type\">date<\/span>\n        \n        <span class=\"docs-parameters__badge docs-parameters__badge--optional\">\n            optional        <\/span>\n    <\/div>\n\n    <div class=\"docs-parameters__desc\">\n        <span class=\"docs-parameters__desc-text\">Earliest transaction date, YYYY-MM-DD, inclusive<\/span>\n            <\/div>\n<\/div>\n\n\n<div class=\"docs-parameters__item\">\n    <div class=\"docs-parameters__name\">\n                    <code class=\"docs-parameters__ident\">transaction_date_to<\/code>\n        \n                    <span class=\"docs-parameters__type\">date<\/span>\n        \n        <span class=\"docs-parameters__badge docs-parameters__badge--optional\">\n            optional        <\/span>\n    <\/div>\n\n    <div class=\"docs-parameters__desc\">\n        <span class=\"docs-parameters__desc-text\">Latest transaction date, YYYY-MM-DD, inclusive, on or after transaction_date_from<\/span>\n            <\/div>\n<\/div>\n\n\n<div class=\"docs-parameters__item\">\n    <div class=\"docs-parameters__name\">\n                    <code class=\"docs-parameters__ident\">disclosure_date_from<\/code>\n        \n                    <span class=\"docs-parameters__type\">date<\/span>\n        \n        <span class=\"docs-parameters__badge docs-parameters__badge--optional\">\n            optional        <\/span>\n    <\/div>\n\n    <div class=\"docs-parameters__desc\">\n        <span class=\"docs-parameters__desc-text\">Earliest disclosure date, YYYY-MM-DD, inclusive<\/span>\n            <\/div>\n<\/div>\n\n\n<div class=\"docs-parameters__item\">\n    <div class=\"docs-parameters__name\">\n                    <code class=\"docs-parameters__ident\">disclosure_date_to<\/code>\n        \n                    <span class=\"docs-parameters__type\">date<\/span>\n        \n        <span class=\"docs-parameters__badge docs-parameters__badge--optional\">\n            optional        <\/span>\n    <\/div>\n\n    <div class=\"docs-parameters__desc\">\n        <span class=\"docs-parameters__desc-text\">Latest disclosure date, YYYY-MM-DD, inclusive, on or after disclosure_date_from<\/span>\n            <\/div>\n<\/div>\n\n\n<div class=\"docs-parameters__item\">\n    <div class=\"docs-parameters__name\">\n                    <code class=\"docs-parameters__ident\">page[limit]<\/code>\n        \n                    <span class=\"docs-parameters__type\">integer<\/span>\n        \n        <span class=\"docs-parameters__badge docs-parameters__badge--optional\">\n            optional        <\/span>\n    <\/div>\n\n    <div class=\"docs-parameters__desc\">\n        <span class=\"docs-parameters__desc-text\">Rows per page<\/span>\n                    <span class=\"docs-parameters__default\"><em>(Default: 20, Range: 1-100)<\/em><\/span>\n            <\/div>\n<\/div>\n\n\n<div class=\"docs-parameters__item\">\n    <div class=\"docs-parameters__name\">\n                    <code class=\"docs-parameters__ident\">page[offset]<\/code>\n        \n                    <span class=\"docs-parameters__type\">integer<\/span>\n        \n        <span class=\"docs-parameters__badge docs-parameters__badge--optional\">\n            optional        <\/span>\n    <\/div>\n\n    <div class=\"docs-parameters__desc\">\n        <span class=\"docs-parameters__desc-text\">Rows to skip<\/span>\n                    <span class=\"docs-parameters__default\"><em>(Default: 0)<\/em><\/span>\n            <\/div>\n<\/div>\n\n<\/div>\n\n\n\n<h4 class=\"docs-content__heading docs-content__heading--h4 wp-block-heading\" id=\"h-request-example\">Request Example<\/h4>\n\n\n    <div class=\"api-key\" data-feed=\"Congressional Trades API\">\n                <div class=\"api-key__topbar\">\n            <div class=\"api-key__tablist\" role=\"tablist\">\n                                                                        <button\n                        class=\"api-key__tab api-key__tab--active\"\n                        type=\"button\"\n                        role=\"tab\"\n                        data-tab=\"url\"                    >URL<\/button>\n                                                                            <button\n                        class=\"api-key__tab\"\n                        type=\"button\"\n                        role=\"tab\"\n                        data-tab=\"curl\"                    >cURL<\/button>\n                                                                            <button\n                        class=\"api-key__tab\"\n                        type=\"button\"\n                        role=\"tab\"\n                        data-tab=\"php\"                    >PHP<\/button>\n                                                                            <button\n                        class=\"api-key__tab\"\n                        type=\"button\"\n                        role=\"tab\"\n                        data-tab=\"python\"                    >Python<\/button>\n                                                                            <button\n                        class=\"api-key__tab\"\n                        type=\"button\"\n                        role=\"tab\"\n                        data-tab=\"r\"                    >R<\/button>\n                                                                            <button\n                        class=\"api-key__tab\"\n                        type=\"button\"\n                        role=\"tab\"\n                        data-tab=\"chatgpt\" data-actions=\"false\"                    >Chat GPT<\/button>\n                                                <\/div>\n            <div class=\"api-key__actions\">\n                <button class=\"api-key__btn api-key__btn--copy\" type=\"button\" aria-label=\"Copy\">\n                    <svg viewBox=\"0 0 20 20\" width=\"18\" height=\"18\" class=\"api-key__btn-icon api-key__btn-icon--default\"><use xlink:href=\"\/img\/icons\/copy.svg#copy\"\/><\/svg>\n                    <img decoding=\"async\" class=\"api-key__btn-icon api-key__btn-icon--success\" src=\"\/img\/approve_ico.svg\" alt=\"\" width=\"14\" height=\"14\" loading=\"eager\">\n                <\/button>\n                <button class=\"api-key__btn api-key__btn--view\" type=\"button\" aria-label=\"Open in new tab\" data-url=\"https:\/\/eodhd.com\/api\/congressional-trades?api_token=YOUR_TOKEN&amp;chamber=senate&amp;transaction_type=purchase,sale&amp;transaction_date_from=2026-01-01&amp;page[limit]=5\">\n                    <svg viewBox=\"0 0 20 21\" width=\"18\" height=\"18\"><use xlink:href=\"\/img\/icons\/openLink.svg#openLink\"\/><\/svg>\n                <\/button>\n            <\/div>\n        <\/div>\n        \n        <div class=\"api-key__panels\">\n                                                                        <div class=\"api-key__panel api-key__panel--active\" data-panel=\"url\">\n                                            <pre class=\"api-key__code\"><code>https:\/\/eodhd.com\/api\/congressional-trades?<span class='white bold'>api_token<\/span>=<span class='orange bold api_token'>YOUR_TOKEN<\/span>&<span class='white bold'>chamber<\/span>=<span class='orange bold chamber'>senate<\/span>&<span class='white bold'>transaction_type<\/span>=<span class='orange bold transaction_type'>purchase,sale<\/span>&<span class='white bold'>transaction_date_from<\/span>=<span class='orange bold transaction_date_from'>2026-01-01<\/span>&<span class='white bold'>page[limit]<\/span>=<span class='orange bold page[limit]'>5<\/span><\/code><\/pre>\n                        <div class=\"api-key__register\">(<a href=\"\/register\">Sign up<\/a> for free to get an API token)<\/div>\n                                    <\/div>\n                                                                            <div class=\"api-key__panel\" data-panel=\"curl\">\n                                                                    <pre class=\"api-key__code\"><code>curl --location &quot;https:\/\/eodhd.com\/api\/congressional-trades?<span class='white bold'>api_token<\/span>=<span class='orange bold api_token'>YOUR_TOKEN<\/span>&<span class='white bold'>chamber<\/span>=<span class='orange bold chamber'>senate<\/span>&<span class='white bold'>transaction_type<\/span>=<span class='orange bold transaction_type'>purchase,sale<\/span>&<span class='white bold'>transaction_date_from<\/span>=<span class='orange bold transaction_date_from'>2026-01-01<\/span>&<span class='white bold'>page[limit]<\/span>=<span class='orange bold page[limit]'>5<\/span>&<span class='white bold'>fmt<\/span>=<span class='orange bold fmt'>json<\/span>&quot;<\/code><\/pre>\n                        <div class=\"api-key__register\">(<a href=\"\/register\">Sign up<\/a> for free to get an API token)<\/div>\n                                    <\/div>\n                                                                            <div class=\"api-key__panel\" data-panel=\"php\">\n                                                                    <pre class=\"api-key__code\"><code>$curl = curl_init();\n\ncurl_setopt_array($curl, array(\n    CURLOPT_URL =&gt; &#039;https:\/\/eodhd.com\/api\/congressional-trades?<span class='white bold'>api_token<\/span>=<span class='orange bold api_token'>YOUR_TOKEN<\/span>&<span class='white bold'>chamber<\/span>=<span class='orange bold chamber'>senate<\/span>&<span class='white bold'>transaction_type<\/span>=<span class='orange bold transaction_type'>purchase,sale<\/span>&<span class='white bold'>transaction_date_from<\/span>=<span class='orange bold transaction_date_from'>2026-01-01<\/span>&<span class='white bold'>page[limit]<\/span>=<span class='orange bold page[limit]'>5<\/span>&<span class='white bold'>fmt<\/span>=<span class='orange bold fmt'>json<\/span>&#039;,\n    CURLOPT_RETURNTRANSFER =&gt; true,\n    CURLOPT_ENCODING =&gt; &#039;&#039;,\n    CURLOPT_MAXREDIRS =&gt; 10,\n    CURLOPT_TIMEOUT =&gt; 0,\n    CURLOPT_FOLLOWLOCATION =&gt; true,\n    CURLOPT_HTTP_VERSION =&gt; CURL_HTTP_VERSION_1_1,\n    CURLOPT_CUSTOMREQUEST =&gt; &#039;GET&#039;,\n));\n\n$data = curl_exec($curl);\ncurl_close($curl);\n\ntry {\n    $data = json_decode($data, true, 512, JSON_THROW_ON_ERROR);\n    var_dump($data);\n} catch (Exception $e) {\n    echo &#039;Error. &#039;.$e-&gt;getMessage();\n}<\/code><\/pre>\n                        <div class=\"api-key__register\">(<a href=\"\/register\">Sign up<\/a> for free to get an API token)<\/div>\n                                    <\/div>\n                                                                            <div class=\"api-key__panel\" data-panel=\"python\">\n                                                                    <pre class=\"api-key__code\"><code>import requests\n\nurl = f&#039;https:\/\/eodhd.com\/api\/congressional-trades?<span class='white bold'>api_token<\/span>=<span class='orange bold api_token'>YOUR_TOKEN<\/span>&<span class='white bold'>chamber<\/span>=<span class='orange bold chamber'>senate<\/span>&<span class='white bold'>transaction_type<\/span>=<span class='orange bold transaction_type'>purchase,sale<\/span>&<span class='white bold'>transaction_date_from<\/span>=<span class='orange bold transaction_date_from'>2026-01-01<\/span>&<span class='white bold'>page[limit]<\/span>=<span class='orange bold page[limit]'>5<\/span>&<span class='white bold'>fmt<\/span>=<span class='orange bold fmt'>json<\/span>&#039;\ndata = requests.get(url).json()\n\nprint(data)<\/code><\/pre>\n                        <div class=\"api-key__register\">(<a href=\"\/register\">Sign up<\/a> for free to get an API token)<\/div>\n                                    <\/div>\n                                                                            <div class=\"api-key__panel\" data-panel=\"r\">\n                                                                    <pre class=\"api-key__code\"><code>library(httr)\nlibrary(jsonlite)\n\nurl &lt;- &#039;https:\/\/eodhd.com\/api\/congressional-trades?<span class='white bold'>api_token<\/span>=<span class='orange bold api_token'>YOUR_TOKEN<\/span>&<span class='white bold'>chamber<\/span>=<span class='orange bold chamber'>senate<\/span>&<span class='white bold'>transaction_type<\/span>=<span class='orange bold transaction_type'>purchase,sale<\/span>&<span class='white bold'>transaction_date_from<\/span>=<span class='orange bold transaction_date_from'>2026-01-01<\/span>&<span class='white bold'>page[limit]<\/span>=<span class='orange bold page[limit]'>5<\/span>&<span class='white bold'>fmt<\/span>=<span class='orange bold fmt'>json<\/span>&#039;\nresponse &lt;- GET(url)\n\nif (http_type(response) == &quot;application\/json&quot;) {\n    content &lt;- content(response, &quot;text&quot;, encoding = &quot;UTF-8&quot;)\n    cat(content)\n} else {\n    cat(&quot;Error while receiving data\\n&quot;)\n}<\/code><\/pre>\n                        <div class=\"api-key__register\">(<a href=\"\/register\">Sign up<\/a> for free to get an API token)<\/div>\n                                    <\/div>\n                                                                            <div class=\"api-key__panel\" data-panel=\"chatgpt\">\n                                            <div class=\"api-key__chatgpt\">\n                            New to coding? Our ChatGPT assistant can generate code in any language tailored to our API.\n                            Simply describe how you want to use our data, and get a working piece of code.\n                            Don&rsquo;t forget to replace the API token with your own.<br><br>\n                            <a href=\"\/lp\/eodhd-chatgpt\" target=\"_blank\">Try it now (it's free)!<\/a><br><br>\n                            <a href=\"https:\/\/www.youtube.com\/watch?v=QVWiLukag7o\" rel=\"nofollow\" target=\"_blank\">\n                                How to use it (YouTube)\n                            <\/a>\n                        <\/div>\n                                    <\/div>\n                                    <\/div>\n    <\/div>\n    \n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"docs-content__heading docs-content__heading--h2 wp-block-heading\" id=\"h-response\">Response<\/h2>\n\n\n\n<p class=\"docs-content__text wp-block-paragraph\">Each record carries a top-level chamber field and four nested objects: member, asset, transaction, and source. The example below is a single record; a real response returns an array under data.<\/p>\n\n\n\n<h4 class=\"docs-content__heading docs-content__heading--h4 wp-block-heading\" id=\"h-response-example\">Response Example<\/h4>\n\n\n<div class=\"code-block\">\n<pre class=\"docs-content__code-block wp-block-code\"><code lang=\"json\" class=\"language-json\">{\n  \"data\": [\n    {\n      \"chamber\": \"senate\",\n      \"member\": {\n        \"bioguide_id\": \"W000802\",\n        \"first_name\": \"Sheldon\",\n        \"last_name\": \"Whitehouse\",\n        \"full_name\": \"Sheldon Whitehouse\",\n        \"office\": \"Whitehouse, Sheldon (Senator)\",\n        \"state\": null,\n        \"party\": null,\n        \"district\": null\n      },\n      \"asset\": {\n        \"symbol\": \"NVDA\",\n        \"description\": \"NVIDIA Corporation - Common Stock\",\n        \"asset_type\": \"Stock\"\n      },\n      \"transaction\": {\n        \"type\": \"sale\",\n        \"transaction_date\": \"2026-06-30\",\n        \"disclosure_date\": \"2026-07-08\",\n        \"owner\": \"Self\",\n        \"amount_range\": \"$15,001 - $50,000\",\n        \"amount_low\": 15001,\n        \"amount_high\": 50000,\n        \"days_to_disclose\": 8,\n        \"is_late\": false,\n        \"comment\": null\n      },\n      \"source\": {\n        \"filing_url\": \"https:\/\/efdsearch.senate.gov\/search\/view\/ptr\/5d9b1b8e-2ae1-442b-860c-e79b8a701dc6\/\",\n        \"source_system\": \"senate\",\n        \"filing_identifier\": \"5d9b1b8e-2ae1-442b-860c-e79b8a701dc6\"\n      }\n    }\n  ],\n  \"meta\": { \"total\": 45561, \"page\": { \"offset\": 0, \"limit\": 20 } },\n  \"links\": { \"next\": \"\/api\/congressional-trades?page%5Boffset%5D=20&amp;page%5Blimit%5D=20\" }\n}<\/code><\/pre>\n<\/div>\n\n\n<p class=\"docs-content__text wp-block-paragraph\">The next link is a path relative to the API host, with the pagination brackets URL-encoded. Prefix it with https:\/\/eodhd.com and add your api_token to fetch the following page. The next key is absent on the last page, which is the signal to stop paging.<\/p>\n\n\n\n<h4 class=\"docs-content__heading docs-content__heading--h4 wp-block-heading\" id=\"h-response-fields\">Response Fields<\/h4>\n\n\n\n<figure class=\"docs-content__table-wrap wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Field<\/th><th>Type<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td>chamber<\/td><td>string<\/td><td>Chamber of Congress: senate or house<\/td><\/tr><tr><td>member.bioguide_id<\/td><td>string or null<\/td><td>Congressional Biographical Directory identifier. Populated where the filed name matches the public congressional directory; null for roughly a quarter of records, mostly older filings and name variants<\/td><\/tr><tr><td>member.first_name<\/td><td>string<\/td><td>Member first name<\/td><\/tr><tr><td>member.last_name<\/td><td>string<\/td><td>Member last name<\/td><\/tr><tr><td>member.full_name<\/td><td>string<\/td><td>Member full name as filed<\/td><\/tr><tr><td>member.office<\/td><td>string or null<\/td><td>Office label as it appears in the source filing<\/td><\/tr><tr><td>member.state<\/td><td>string or null<\/td><td>Two-letter US state code, when the filing provides it<\/td><\/tr><tr><td>member.party<\/td><td>null<\/td><td>Reserved for the member&#8217;s political party. Neither source portal publishes party on the disclosure, so this field is currently always null<\/td><\/tr><tr><td>member.district<\/td><td>number or null<\/td><td>House district number. Null for senators<\/td><\/tr><tr><td>asset.symbol<\/td><td>string or null<\/td><td>Ticker symbol, when the asset maps to a listed instrument. Null for roughly a quarter of records \u2014 bonds, funds held outside listed markets, and other untickered holdings<\/td><\/tr><tr><td>asset.description<\/td><td>string<\/td><td>Asset description as filed<\/td><\/tr><tr><td>asset.asset_type<\/td><td>string<\/td><td>Normalised asset class: Stock, StockOption, Bond, or Other<\/td><\/tr><tr><td>transaction.type<\/td><td>string<\/td><td>Transaction type: purchase, sale, or exchange<\/td><\/tr><tr><td>transaction.transaction_date<\/td><td>string (date)<\/td><td>Date the trade took place, YYYY-MM-DD<\/td><\/tr><tr><td>transaction.disclosure_date<\/td><td>string (date)<\/td><td>Date the trade was disclosed, YYYY-MM-DD<\/td><\/tr><tr><td>transaction.owner<\/td><td>string or null<\/td><td>Account owner: Self, Spouse, Joint, or Child<\/td><\/tr><tr><td>transaction.amount_range<\/td><td>string<\/td><td>Disclosed transaction amount band, as filed, for example $1,001 &#8211; $15,000. Also carries open-ended bands such as Over $1,000,000, and Unknown where the filing states no band<\/td><\/tr><tr><td>transaction.amount_low<\/td><td>number or null<\/td><td>Lower bound of the amount range, in US dollars. Null when the band cannot be parsed into bounds<\/td><\/tr><tr><td>transaction.amount_high<\/td><td>number or null<\/td><td>Upper bound of the amount range, in US dollars. Null for open-ended bands and unparsable ones<\/td><\/tr><tr><td>transaction.days_to_disclose<\/td><td>number<\/td><td>Days between transaction_date and disclosure_date<\/td><\/tr><tr><td>transaction.is_late<\/td><td>boolean<\/td><td>True when the filing missed the 45-day STOCK Act disclosure window. Around one record in ten is late<\/td><\/tr><tr><td>transaction.comment<\/td><td>string or null<\/td><td>Free-text note from the filing, when present<\/td><\/tr><tr><td>source.filing_url<\/td><td>string<\/td><td>Link to the original filing on the official government portal<\/td><\/tr><tr><td>source.source_system<\/td><td>string<\/td><td>Origin of the filing: senate or house<\/td><\/tr><tr><td>source.filing_identifier<\/td><td>string<\/td><td>Identifier of the filing at the source system<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"docs-content__text has-text-align-center wp-block-paragraph\"><a class=\"btn btn--orange\" href=\"https:\/\/eodhd.com\/register\"><span class='mb-text'>Sign up &amp; Get Data<\/span><\/a><\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"docs-content__heading docs-content__heading--h2 wp-block-heading\" id=\"h-response-codes\">Response Codes<\/h2>\n\n\n\n<figure class=\"docs-content__table-wrap wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Code<\/th><th>Meaning<\/th><\/tr><\/thead><tbody><tr><td>200<\/td><td>Success. Response body carries data, meta, and links<\/td><\/tr><tr><td>401<\/td><td>Missing or invalid api_token<\/td><\/tr><tr><td>403<\/td><td>Token is valid but the plan does not include Congressional Trades<\/td><\/tr><tr><td>422<\/td><td>Invalid parameter \u2014 malformed date, page[limit] above 100 or below 1, end date before start date, an unknown chamber or transaction type, or a malformed symbol or bioguide_id. The response body names the parameter and the reason<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"docs-content__heading docs-content__heading--h2 wp-block-heading\" id=\"h-notes-and-limitations\">Notes and Limitations<\/h2>\n\n\n\n<ul class=\"docs-content__list wp-block-list\">\n<li>Both chambers are returned together. Use chamber=senate or chamber=house to restrict to one; the chamber field on each record identifies its origin.<\/li>\n\n\n\n<li>Exchanges are rare. Purchases and sales are split almost evenly across the history \u2014 roughly 23,000 each \u2014 while the exchange type accounts for 316 records in total, so a filter on it returns a small set by nature.<\/li>\n\n\n\n<li>The amount_low and amount_high fields are parsed from the disclosed amount band; days_to_disclose and is_late are computed against the 45-day STOCK Act window. These are provided by EODHD and are not part of the raw filing.<\/li>\n\n\n\n<li>Some holdings, including many bonds and other instruments, carry no ticker symbol. For those records asset.symbol is null while asset.description and asset.asset_type remain populated, and a request filtered by symbol will not return them.<\/li>\n\n\n\n<li>Source data is reproduced as filed. Member details such as state are populated only where the source provides them, and data-entry errors in the original disclosures are passed through rather than silently corrected. The filing_url on each record links to the official source for verification.<\/li>\n\n\n\n<li>82 records carry a mistyped transaction date that falls in the future, the most extreme in the year 3031. They are copied from the filings as submitted, and because results are ordered by transaction date descending they surface on the first unfiltered page. Set transaction_date_to to today&#8217;s date to exclude them.<\/li>\n\n\n\n<li>Disclosure timing is set by the filer, not by EODHD. The STOCK Act allows up to 45 days between a trade and its disclosure, and late filings occur, so treat this data as a disclosure record rather than a real-time signal.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"docs-content__heading docs-content__heading--h2 wp-block-heading\" id=\"h-related-apis\">Related APIs<\/h2>\n\n\n\n<ul class=\"docs-content__list wp-block-list\">\n<li><a href=\"https:\/\/eodhd.com\/financial-apis\/insider-transactions-api\">Insider Transactions API<\/a> \u2014 the corporate counterpart: trades filed by company officers and directors on SEC Form 4.<\/li>\n\n\n\n<li><a href=\"https:\/\/eodhd.com\/financial-apis\/sec-filings-api\">SEC Filings API<\/a> \u2014 the filings themselves, for readers who need the underlying disclosure documents.<\/li>\n\n\n\n<li><a href=\"https:\/\/eodhd.com\/financial-apis\/api-for-historical-data-and-volumes\">End-of-Day Historical Data API<\/a> \u2014 prices to join to a trade, for measuring what a disclosed transaction was worth or how the stock moved afterwards.<\/li>\n\n\n\n<li><a href=\"https:\/\/eodhd.com\/financial-apis\/search-api-for-stocks-etfs-mutual-funds\">Search API<\/a> \u2014 resolve a company name from a filing into the ticker to pass as symbol.<\/li>\n\n\n\n<li><a href=\"https:\/\/eodhd.com\/financial-apis\/sanctions-api-ofac-screening-data-entities-vessels\">Sanctions API<\/a> \u2014 another compliance and screening dataset built on official government sources.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n    <div class=\"spotlight spotlight--accent spotlight--wide\">\n        <div class=\"spotlight__content\">\n            \n                            <div class=\"spotlight__title\">Compare plans and find your fit<\/div>\n            \n                            <div class=\"spotlight__desc\">Free and paid plans for individual and commercial use<\/div>\n                    <\/div>\n\n                    <a class=\"spotlight__action btn btn--white\"\n               href=\"https:\/\/eodhd.com\/pricing\"\n               target=\"_blank\"\n               rel=\"noopener\">\n                Go to Pricing            <\/a>\n            <\/div>\n    \n","protected":false},"excerpt":{"rendered":"<p>The EODHD Congressional Trades API returns stock-trade disclosures filed by members of the US Congress. Under the STOCK Act, senators and representatives must publicly disclose their securities transactions within 45 days. EODHD collects these filings directly from the two official government portals \u2014 the Senate Electronic Financial Disclosure system and the House Clerk disclosure site [&hellip;]<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[119],"tags":[188,190,146],"class_list":["post-8040","post","type-post","status-publish","format-standard","hentry","category-alternative-data-financial-api","tag-congress","tag-senate","tag-us"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.6 (Yoast SEO v26.7) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Congressional Trades API (beta) | EODHD APIs Documentation<\/title>\n<meta name=\"description\" content=\"Congressional Trades API: US Senate and House stock disclosures under the STOCK Act, history back to 2012. One JSON endpoint, filterable by member and ticker.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Congressional Trades API (beta)\" \/>\n<meta property=\"og:description\" content=\"Congressional Trades API: US Senate and House stock disclosures under the STOCK Act, history back to 2012. One JSON endpoint, filterable by member and ticker.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api\" \/>\n<meta property=\"og:site_name\" content=\"Stock Price Data, Financial and Stock Market API\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/eodhistoricaldata\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-16T08:38:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-20T07:57:11+00:00\" \/>\n<meta name=\"author\" content=\"a.pletnev\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@EOD_data\" \/>\n<meta name=\"twitter:site\" content=\"@EOD_data\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"a.pletnev\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api#article\",\"isPartOf\":{\"@id\":\"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api\"},\"author\":{\"name\":\"a.pletnev\",\"@id\":\"https:\/\/eodhd.com\/financial-apis\/#\/schema\/person\/ed3193541c25b73e823a83bdcdb09b5d\"},\"headline\":\"Congressional Trades API (beta)\",\"datePublished\":\"2026-07-16T08:38:00+00:00\",\"dateModified\":\"2026-08-20T07:57:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api\"},\"wordCount\":1691,\"publisher\":{\"@id\":\"https:\/\/eodhd.com\/financial-apis\/#organization\"},\"keywords\":[\"congress\",\"senate\",\"US\"],\"articleSection\":[\"4. Alternative &amp; Derived Data\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api\",\"url\":\"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api\",\"name\":\"Congressional Trades API (beta) | EODHD APIs Documentation\",\"isPartOf\":{\"@id\":\"https:\/\/eodhd.com\/financial-apis\/#website\"},\"datePublished\":\"2026-07-16T08:38:00+00:00\",\"dateModified\":\"2026-08-20T07:57:11+00:00\",\"description\":\"Congressional Trades API: US Senate and House stock disclosures under the STOCK Act, history back to 2012. One JSON endpoint, filterable by member and ticker.\",\"breadcrumb\":{\"@id\":\"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/eodhd.com\/financial-apis\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Congressional Trades API (beta)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/eodhd.com\/financial-apis\/#website\",\"url\":\"https:\/\/eodhd.com\/financial-apis\/\",\"name\":\"Historical Stock Prices and Fundamental Financial Data APIs | EODHD\",\"description\":\"End Of Day (EOD), Fundamental and Real-time\/Live Data Market API\",\"publisher\":{\"@id\":\"https:\/\/eodhd.com\/financial-apis\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/eodhd.com\/financial-apis\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/eodhd.com\/financial-apis\/#organization\",\"name\":\"EODHD (EOD Historical Data)\",\"url\":\"https:\/\/eodhd.com\/financial-apis\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/eodhd.com\/financial-apis\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/eodhd.com\/financial-apis\/wp-content\/uploads\/2023\/12\/EODHD-Logo.png\",\"contentUrl\":\"https:\/\/eodhd.com\/financial-apis\/wp-content\/uploads\/2023\/12\/EODHD-Logo.png\",\"width\":159,\"height\":82,\"caption\":\"EODHD (EOD Historical Data)\"},\"image\":{\"@id\":\"https:\/\/eodhd.com\/financial-apis\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/eodhistoricaldata\",\"https:\/\/x.com\/EOD_data\",\"https:\/\/www.reddit.com\/r\/EODHistoricalData\/\",\"https:\/\/eod-historical-data.medium.com\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/eodhd.com\/financial-apis\/#\/schema\/person\/ed3193541c25b73e823a83bdcdb09b5d\",\"name\":\"a.pletnev\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/eodhd.com\/financial-apis\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/020e454749b61223b72b1bf96e7978ccdd1e39b04585b29698da3767a193a57d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/020e454749b61223b72b1bf96e7978ccdd1e39b04585b29698da3767a193a57d?s=96&d=mm&r=g\",\"caption\":\"a.pletnev\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Congressional Trades API (beta) | EODHD APIs Documentation","description":"Congressional Trades API: US Senate and House stock disclosures under the STOCK Act, history back to 2012. One JSON endpoint, filterable by member and ticker.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api","og_locale":"en_US","og_type":"article","og_title":"Congressional Trades API (beta)","og_description":"Congressional Trades API: US Senate and House stock disclosures under the STOCK Act, history back to 2012. One JSON endpoint, filterable by member and ticker.","og_url":"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api","og_site_name":"Stock Price Data, Financial and Stock Market API","article_publisher":"https:\/\/www.facebook.com\/eodhistoricaldata","article_published_time":"2026-07-16T08:38:00+00:00","article_modified_time":"2026-08-20T07:57:11+00:00","author":"a.pletnev","twitter_card":"summary_large_image","twitter_creator":"@EOD_data","twitter_site":"@EOD_data","twitter_misc":{"Written by":"a.pletnev","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api#article","isPartOf":{"@id":"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api"},"author":{"name":"a.pletnev","@id":"https:\/\/eodhd.com\/financial-apis\/#\/schema\/person\/ed3193541c25b73e823a83bdcdb09b5d"},"headline":"Congressional Trades API (beta)","datePublished":"2026-07-16T08:38:00+00:00","dateModified":"2026-08-20T07:57:11+00:00","mainEntityOfPage":{"@id":"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api"},"wordCount":1691,"publisher":{"@id":"https:\/\/eodhd.com\/financial-apis\/#organization"},"keywords":["congress","senate","US"],"articleSection":["4. Alternative &amp; Derived Data"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api","url":"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api","name":"Congressional Trades API (beta) | EODHD APIs Documentation","isPartOf":{"@id":"https:\/\/eodhd.com\/financial-apis\/#website"},"datePublished":"2026-07-16T08:38:00+00:00","dateModified":"2026-08-20T07:57:11+00:00","description":"Congressional Trades API: US Senate and House stock disclosures under the STOCK Act, history back to 2012. One JSON endpoint, filterable by member and ticker.","breadcrumb":{"@id":"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/eodhd.com\/financial-apis\/congressional-trades-api"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/eodhd.com\/financial-apis\/congressional-trades-api#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/eodhd.com\/financial-apis"},{"@type":"ListItem","position":2,"name":"Congressional Trades API (beta)"}]},{"@type":"WebSite","@id":"https:\/\/eodhd.com\/financial-apis\/#website","url":"https:\/\/eodhd.com\/financial-apis\/","name":"Historical Stock Prices and Fundamental Financial Data APIs | EODHD","description":"End Of Day (EOD), Fundamental and Real-time\/Live Data Market API","publisher":{"@id":"https:\/\/eodhd.com\/financial-apis\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/eodhd.com\/financial-apis\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/eodhd.com\/financial-apis\/#organization","name":"EODHD (EOD Historical Data)","url":"https:\/\/eodhd.com\/financial-apis\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/eodhd.com\/financial-apis\/#\/schema\/logo\/image\/","url":"https:\/\/eodhd.com\/financial-apis\/wp-content\/uploads\/2023\/12\/EODHD-Logo.png","contentUrl":"https:\/\/eodhd.com\/financial-apis\/wp-content\/uploads\/2023\/12\/EODHD-Logo.png","width":159,"height":82,"caption":"EODHD (EOD Historical Data)"},"image":{"@id":"https:\/\/eodhd.com\/financial-apis\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/eodhistoricaldata","https:\/\/x.com\/EOD_data","https:\/\/www.reddit.com\/r\/EODHistoricalData\/","https:\/\/eod-historical-data.medium.com\/"]},{"@type":"Person","@id":"https:\/\/eodhd.com\/financial-apis\/#\/schema\/person\/ed3193541c25b73e823a83bdcdb09b5d","name":"a.pletnev","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/eodhd.com\/financial-apis\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/020e454749b61223b72b1bf96e7978ccdd1e39b04585b29698da3767a193a57d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/020e454749b61223b72b1bf96e7978ccdd1e39b04585b29698da3767a193a57d?s=96&d=mm&r=g","caption":"a.pletnev"}}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p8NjB1-25G","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/eodhd.com\/financial-apis\/wp-json\/wp\/v2\/posts\/8040","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/eodhd.com\/financial-apis\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/eodhd.com\/financial-apis\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/eodhd.com\/financial-apis\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/eodhd.com\/financial-apis\/wp-json\/wp\/v2\/comments?post=8040"}],"version-history":[{"count":4,"href":"https:\/\/eodhd.com\/financial-apis\/wp-json\/wp\/v2\/posts\/8040\/revisions"}],"predecessor-version":[{"id":8123,"href":"https:\/\/eodhd.com\/financial-apis\/wp-json\/wp\/v2\/posts\/8040\/revisions\/8123"}],"wp:attachment":[{"href":"https:\/\/eodhd.com\/financial-apis\/wp-json\/wp\/v2\/media?parent=8040"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/eodhd.com\/financial-apis\/wp-json\/wp\/v2\/categories?post=8040"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/eodhd.com\/financial-apis\/wp-json\/wp\/v2\/tags?post=8040"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}