summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDanglewood <85772166+deeleeramone@users.noreply.github.com>2024-06-06 22:04:15 -0700
committerDanglewood <85772166+deeleeramone@users.noreply.github.com>2024-06-06 22:04:15 -0700
commit692ffc3c5c8aaf384b6579d177c17440213d162d (patch)
treeaecdaba3f9dd503909c749ada2afd457fbed9efc
parent7ef0deea34dc52bc03b10a46245cdfc6d96bf4cb (diff)
commercial paper
-rw-r--r--openbb_platform/core/openbb_core/provider/standard_models/commercial_paper.py (renamed from openbb_platform/core/openbb_core/provider/standard_models/cp.py)35
-rw-r--r--openbb_platform/extensions/fixedincome/integration/test_fixedincome_api.py6
-rw-r--r--openbb_platform/extensions/fixedincome/integration/test_fixedincome_python.py6
-rw-r--r--openbb_platform/extensions/fixedincome/openbb_fixedincome/corporate/corporate_router.py2
-rw-r--r--openbb_platform/openbb/assets/reference.json135
-rw-r--r--openbb_platform/openbb/package/fixedincome_corporate.py79
-rw-r--r--openbb_platform/providers/fred/openbb_fred/__init__.py2
-rw-r--r--openbb_platform/providers/fred/openbb_fred/models/commercial_paper.py (renamed from openbb_platform/providers/fred/openbb_fred/models/cp.py)0
-rw-r--r--openbb_platform/providers/fred/tests/record/http/test_fred_fetchers/test_fred_commercial_paper_fetcher.yaml109
-rw-r--r--openbb_platform/providers/fred/tests/test_fred_fetchers.py8
10 files changed, 277 insertions, 105 deletions
diff --git a/openbb_platform/core/openbb_core/provider/standard_models/cp.py b/openbb_platform/core/openbb_core/provider/standard_models/commercial_paper.py
index 8fbc9888f4b..2f4fc5cdb5c 100644
--- a/openbb_platform/core/openbb_core/provider/standard_models/cp.py
+++ b/openbb_platform/core/openbb_core/provider/standard_models/commercial_paper.py
@@ -3,9 +3,9 @@
from datetime import (
date as dateType,
)
-from typing import Literal, Optional
+from typing import Optional
-from pydantic import Field, field_validator
+from pydantic import Field
from openbb_core.provider.abstract.data import Data
from openbb_core.provider.abstract.query_params import QueryParams
@@ -26,28 +26,21 @@ class CommercialPaperParams(QueryParams):
default=None,
description=QUERY_DESCRIPTIONS.get("end_date", ""),
)
- maturity: Literal["overnight", "7d", "15d", "30d", "60d", "90d"] = Field(
- default="30d",
- description="The maturity.",
- )
- category: Literal["asset_backed", "financial", "nonfinancial"] = Field(
- default="financial",
- description="The category.",
- )
- grade: Literal["aa", "a2_p2"] = Field(
- default="aa",
- description="The grade.",
- )
-
- @field_validator("maturity", "category", "grade", mode="before", check_fields=False)
- @classmethod
- def to_lower(cls, v: Optional[str]) -> Optional[str]:
- """Convert field to lowercase."""
- return v.lower() if v else v
class CommercialPaperData(Data):
"""Commercial Paper Data."""
date: dateType = Field(description=DATA_DESCRIPTIONS.get("date", ""))
- rate: Optional[float] = Field(description="Commercial Paper Rate.")
+ symbol: Optional[str] = Field(
+ default=None, description=DATA_DESCRIPTIONS.get("symbol", "")
+ )
+ maturity: str = Field(description="Maturity length of the item.")
+ rate: float = Field(
+ description="Interest rate.",
+ json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100},
+ )
+ title: Optional[str] = Field(
+ default=None,
+ description="Title of the series.",
+ )
diff --git a/openbb_platform/extensions/fixedincome/integration/test_fixedincome_api.py b/openbb_platform/extensions/fixedincome/integration/test_fixedincome_api.py
index 424246cf0cf..6a5012405e5 100644
--- a/openbb_platform/extensions/fixedincome/integration/test_fixedincome_api.py
+++ b/openbb_platform/extensions/fixedincome/integration/test_fixedincome_api.py
@@ -357,9 +357,11 @@ def test_fixedincome_corporate_moody(params, headers):
{
"start_date": "2023-01-01",
"end_date": "2023-06-06",
- "maturity": "30d",
+ "maturity": "overnight",
"category": "financial",
- "grade": "aa",
+ "transform": None,
+ "aggregation_method": None,
+ "frequency": None,
"provider": "fred",
}
)
diff --git a/openbb_platform/extensions/fixedincome/integration/test_fixedincome_python.py b/openbb_platform/extensions/fixedincome/integration/test_fixedincome_python.py
index ebdf738cb58..00d2ddda4bc 100644
--- a/openbb_platform/extensions/fixedincome/integration/test_fixedincome_python.py
+++ b/openbb_platform/extensions/fixedincome/integration/test_fixedincome_python.py
@@ -325,9 +325,11 @@ def test_fixedincome_corporate_moody(params, obb):
{
"start_date": "2023-01-01",
"end_date": "2023-06-06",
- "maturity": "30d",
+ "maturity": "overnight",
"category": "financial",
- "grade": "aa",
+ "transform": None,
+ "aggregation_method": None,
+ "frequency": None,
"provider": "fred",
}
)
diff --git a/openbb_platform/extensions/fixedincome/openbb_fixedincome/corporate/corporate_router.py b/openbb_platform/extensions/fixedincome/openbb_fixedincome/corporate/corporate_router.py
index 18631946f2e..8b01f85fd10 100644
--- a/openbb_platform/extensions/fixedincome/openbb_fixedincome/corporate/corporate_router.py
+++ b/openbb_platform/extensions/fixedincome/openbb_fixedincome/corporate/corporate_router.py
@@ -113,7 +113,7 @@ async def spot_rates(
model="CommercialPaper",
examples=[
APIEx(parameters={"provider": "fred"}),
- APIEx(parameters={"maturity": "15d", "provider": "fred"}),
+ APIEx(parameters={"category": "all", "maturity": "15d", "provider": "fred"}),
],
)
async def commercial_paper(
diff --git a/openbb_platform/openbb/assets/reference.json b/openbb_platform/openbb/assets/reference.json
index ee30c1f65d4..a6c4baa734d 100644
--- a/openbb_platform/openbb/assets/reference.json
+++ b/openbb_platform/openbb/assets/reference.json
@@ -32051,7 +32051,7 @@
"message": null
},
"description": "Commercial Paper.\n\nCommercial paper (CP) consists of short-term, promissory notes issued primarily by corporations.\nMaturities range up to 270 days but average about 30 days.\nMany companies use CP to raise cash needed for current transactions,\nand many find it to be a lower-cost alternative to bank loans.",
- "examples": "\nExamples\n--------\n\n```python\nfrom openbb import obb\nobb.fixedincome.corporate.commercial_paper(provider='fred')\nobb.fixedincome.corporate.commercial_paper(maturity='15d', provider='fred')\n```\n\n",
+ "examples": "\nExamples\n--------\n\n```python\nfrom openbb import obb\nobb.fixedincome.corporate.commercial_paper(provider='fred')\nobb.fixedincome.corporate.commercial_paper(category=all, maturity=15d, provider='fred')\n```\n\n",
"parameters": {
"standard": [
{
@@ -32071,38 +32071,96 @@
"choices": null
},
{
+ "name": "provider",
+ "type": "Literal['fred']",
+ "description": "The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: f, r, e, d.",
+ "default": null,
+ "optional": true
+ }
+ ],
+ "fred": [
+ {
"name": "maturity",
- "type": "Literal['overnight', '7d', '15d', '30d', '60d', '90d']",
- "description": "The maturity.",
- "default": "30d",
+ "type": "Union[Union[str, Literal['all', 'overnight', '7d', '15d', '30d', '60d', '90d']], List[Union[str, Literal['all', 'overnight', '7d', '15d', '30d', '60d', '90d']]]]",
+ "description": "A target maturity. Multiple items allowed for provider(s): fred.",
+ "default": "all",
"optional": true,
- "choices": null
+ "choices": [
+ "all",
+ "overnight",
+ "7d",
+ "15d",
+ "30d",
+ "60d",
+ "90d"
+ ]
},
{
"name": "category",
- "type": "Literal['asset_backed', 'financial', 'nonfinancial']",
- "description": "The category.",
- "default": "financial",
+ "type": "Union[Union[str, Literal['all', 'asset_backed', 'financial', 'nonfinancial', 'a2p2']], List[Union[str, Literal['all', 'asset_backed', 'financial', 'nonfinancial', 'a2p2']]]]",
+ "description": "The category of asset. Multiple items allowed for provider(s): fred.",
+ "default": "all",
"optional": true,
- "choices": null
+ "choices": [
+ "all",
+ "asset_backed",
+ "financial",
+ "nonfinancial",
+ "a2p2"
+ ]
},
{
- "name": "grade",
- "type": "Literal['aa', 'a2_p2']",
- "description": "The grade.",
- "default": "aa",
+ "name": "frequency",
+ "type": "Literal['a', 'q', 'm', 'w', 'wef', 'weth', 'wew', 'wetu', 'wem', 'wesu', 'wesa', 'bwew', 'bwem']",
+ "description": "Frequency aggregation to convert daily data to lower frequency. a = Annual q = Quarterly m = Monthly w = Weekly wef = Weekly, Ending Friday weth = Weekly, Ending Thursday wew = Weekly, Ending Wednesday wetu = Weekly, Ending Tuesday wem = Weekly, Ending Monday wesu = Weekly, Ending Sunday wesa = Weekly, Ending Saturday bwew = Biweekly, Ending Wednesday bwem = Biweekly, Ending Monday",
+ "default": null,
"optional": true,
- "choices": null
+ "choices": [
+ "a",
+ "q",
+ "m",
+ "w",
+ "wef",
+ "weth",
+ "wew",
+ "wetu",
+ "wem",
+ "wesu",
+ "wesa",
+ "bwew",
+ "bwem"
+ ]
},
{
- "name": "provider",
- "type": "Literal['fred']",
- "description": "The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: f, r, e, d.",
+ "name": "aggregation_method",
+ "type": "Literal['avg', 'sum', 'eop']",
+ "description": "A key that indicates the aggregation method used for frequency aggregation. avg = Average sum = Sum eop = End of Period",
"default": null,
- "optional": true
+ "optional": true,
+ "choices": [
+ "avg",
+ "sum",
+ "eop"
+ ]
+ },
+ {
+ "name": "transform",
+ "type": "Literal['chg', 'ch1', 'pch', 'pc1', 'pca', 'cch', 'cca', 'log']",
+ "description": "Transformation type None = No transformation chg = Change ch1 = Change from Year Ago pch = Percent Change pc1 = Percent Change from Year Ago pca = Compounded Annual Rate of Change cch = Continuously Compounded Rate of Change cca = Continuously Compounded Annual Rate of Change log = Natural Log",
+ "default": null,
+ "optional": true,
+ "choices": [
+ "chg",
+ "ch1",
+ "pch",
+ "pc1",
+ "pca",
+ "cch",
+ "cca",
+ "log"
+ ]
}
- ],
- "fred": []
+ ]
},
"returns": {
"OBBject": [
@@ -32144,15 +32202,48 @@
"choices": null
},
{
+ "name": "symbol",
+ "type": "str",
+ "description": "Symbol representing the entity requested in the data.",
+ "default": null,
+ "optional": true,
+ "choices": null
+ },
+ {
+ "name": "maturity",
+ "type": "str",
+ "description": "Maturity length of the item.",
+ "default": "",
+ "optional": false,
+ "choices": null
+ },
+ {
"name": "rate",
"type": "float",
- "description": "Commercial Paper Rate.",
+ "description": "Interest rate.",
"default": "",
"optional": false,
"choices": null
+ },
+ {
+ "name": "title",
+ "type": "str",
+ "description": "Title of the series.",
+ "default": null,
+ "optional": true,
+ "choices": null
}
],
- "fred": []
+ "fred": [
+ {
+ "name": "asset_type",
+ "type": "Literal['asset_backed', 'financial', 'nonfinancial', 'a2p2']",
+ "description": "The category of asset.",
+ "default": "",
+ "optional": false,
+ "choices": null
+ }
+ ]
},
"model": "CommercialPaper"
},
diff --git a/openbb_platform/openbb/package/fixedincome_corporate.py b/openbb_platform/openbb/package/fixedincome_corporate.py
index 9d4d80b6e9c..ece1b4d547f 100644
--- a/openbb_platform/openbb/package/fixedincome_corporate.py
+++ b/openbb_platform/openbb/package/fixedincome_corporate.py
@@ -35,17 +35,6 @@ class ROUTER_fixedincome_corporate(Container):
Union[datetime.date, None, str],
OpenBBField(description="End date of the data, in YYYY-MM-DD format."),
] = None,
- maturity: Annotated[
- Literal["overnight", "7d", "15d", "30d", "60d", "90d"],
- OpenBBField(description="The maturity."),
- ] = "30d",
- category: Annotated[
- Literal["asset_backed", "financial", "nonfinancial"],
- OpenBBField(description="The category."),
- ] = "financial",
- grade: Annotated[
- Literal["aa", "a2_p2"], OpenBBField(description="The grade.")
- ] = "aa",
provider: Annotated[
Optional[Literal["fred"]],
OpenBBField(
@@ -68,14 +57,49 @@ class ROUTER_fixedincome_corporate(Container):
Start date of the data, in YYYY-MM-DD format.
end_date : Union[datetime.date, None, str]
End date of the data, in YYYY-MM-DD format.
- maturity : Literal['overnight', '7d', '15d', '30d', '60d', '90d']
- The maturity.
- category : Literal['asset_backed', 'financial', 'nonfinancial']
- The category.
- grade : Literal['aa', 'a2_p2']
- The grade.
provider : Optional[Literal['fred']]
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fred.
+ maturity : Union[str, Literal['all', 'overnight', '7d', '15d', '30d', '60d', '90d']]
+ A target maturity. Multiple comma separated items allowed. (provider: fred)
+ category : Union[str, Literal['all', 'asset_backed', 'financial', 'nonfinancial', 'a2p2']]
+ The category of asset. Multiple comma separated items allowed. (provider: fred)
+ frequency : Optional[Literal['a', 'q', 'm', 'w', 'wef', 'weth', 'wew', 'wetu', 'wem', 'wesu', 'wesa', 'bwew', 'bwem']]
+
+ Frequency aggregation to convert daily data to lower frequency.
+ a = Annual
+ q = Quarterly
+ m = Monthly
+ w = Weekly
+ wef = Weekly, Ending Friday
+ weth = Weekly, Ending Thursday
+ wew = Weekly, Ending Wednesday
+ wetu = Weekly, Ending Tuesday
+ wem = Weekly, Ending Monday
+ wesu = Weekly, Ending Sunday
+ wesa = Weekly, Ending Saturday
+ bwew = Biweekly, Ending Wednesday
+ bwem = Biweekly, Ending Monday
+ (provider: fred)
+ aggregation_method : Optional[Literal['avg', 'sum', 'eop']]
+
+ A key that indicates the aggregation method used for frequency aggregation.
+ avg = Average
+ sum = Sum
+ eop = End of Period
+ (provider: fred)
+ transform : Optional[Literal['chg', 'ch1', 'pch', 'pc1', 'pca', 'cch', 'cca', 'log']]
+
+ Transformation type
+ None = No transformation
+ chg = Change
+ ch1 = Change from Year Ago
+ pch = Percent Change
+ pc1 = Percent Change from Year Ago
+ pca = Compounded Annual Rate of Change
+ cch = Continuously Compounded Rate of Change
+ cca = Continuously Compounded Annual Rate of Change
+ log = Natural Log
+ (provider: fred)
Returns
-------
@@ -95,14 +119,22 @@ class ROUTER_fixedincome_corporate(Container):
---------------
date : date
The date of the data.
- rate : Optional[float]
- Commercial Paper Rate.
+ symbol : Optional[str]
+ Symbol representing the entity requested in the data.
+ maturity : str
+ Maturity length of the item.
+ rate : float
+ Interest rate.
+ title : Optional[str]
+ Title of the series.
+ asset_type : Optional[Literal['asset_backed', 'financial', 'nonfinancial', 'a2p2']]
+ The category of asset. (provider: fred)
Examples
--------
>>> from openbb import obb
>>> obb.fixedincome.corporate.commercial_paper(provider='fred')
- >>> obb.fixedincome.corporate.commercial_paper(maturity='15d', provider='fred')
+ >>> obb.fixedincome.corporate.commercial_paper(category='all', maturity='15d', provider='fred')
""" # noqa: E501
return self._run(
@@ -118,11 +150,12 @@ class ROUTER_fixedincome_corporate(Container):
standard_params={
"start_date": start_date,
"end_date": end_date,
- "maturity": maturity,
- "category": category,
- "grade": grade,
},
extra_params=kwargs,
+ info={
+ "maturity": {"fred": {"multiple_items_allowed": True}},
+ "category": {"fred": {"multiple_items_allowed": True}},
+ },
)
)
diff --git a/openbb_platform/providers/fred/openbb_fred/__init__.py b/openbb_platform/providers/fred/openbb_fred/__init__.py
index d1b92da4a3a..1e8e2274c2a 100644
--- a/openbb_platform/providers/fred/openbb_fred/__init__.py
+++ b/openbb_platform/providers/fred/openbb_fred/__init__.py
@@ -3,8 +3,8 @@
from openbb_core.provider.abstract.provider import Provider
from openbb_fred.models.ameribor_rates import FREDAMERIBORFetcher
from openbb_fred.models.balance_of_payments import FredBalanceOfPaymentsFetcher
+from openbb_fred.models.commercial_paper import FREDCommercialPaperFetcher
from openbb_fred.models.consumer_price_index import FREDConsumerPriceIndexFetcher
-from openbb_fred.models.cp import FREDCommercialPaperFetcher
from openbb_fred.models.dwpcr_rates import FREDDiscountWindowPrimaryCreditRateFetcher
from openbb_fred.models.ecb_interest_rates import (
FREDEuropeanCentralBankInterestRatesFetcher,
diff --git a/openbb_platform/providers/fred/openbb_fred/models/cp.py b/openbb_platform/providers/fred/openbb_fred/models/commercial_paper.py
index b957ff08495..b957ff08495 100644
--- a/openbb_platform/providers/fred/openbb_fred/models/cp.py
+++ b/openbb_platform/providers/fred/openbb_fred/models/commercial_paper.py
diff --git a/openbb_platform/providers/fred/tests/record/http/test_fred_fetchers/test_fred_commercial_paper_fetcher.yaml b/openbb_platform/providers/fred/tests/record/http/test_fred_fetchers/test_fred_commercial_paper_fetcher.yaml
index 54e88d9426c..b14b4bba195 100644
--- a/openbb_platform/providers/fred/tests/record/http/test_fred_fetchers/test_fred_commercial_paper_fetcher.yaml
+++ b/openbb_platform/providers/fred/tests/record/http/test_fred_fetchers/test_fred_commercial_paper_fetcher.yaml
@@ -3,57 +3,106 @@ interactions:
body: null
headers:
Accept:
- - '*/*'
+ - application/json
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
method: GET
- uri: https://api.stlouisfed.org/fred/series/observations?api_key=MOCK_API_KEY&file_type=json&observation_end=2023-06-06&observation_start=2023-01-01&series_id=RIFSPPFAAD30NB
+ uri: https://api.stlouisfed.org/fred/series/observations?api_key=MOCK_API_KEY&file_type=json&limit=100000&observation_end=2024-02-01&observation_start=2024-01-01&series_id=RIFSPPAAAD30NB
response:
body:
string: !!binary |
- H4sIAAAAAAAEA6pWKkpNzCnJzE2NLy5JLCpRslIyMjAy1jU01DUwUtJByKbmpaDL5ScVpxaVJZZk
- 5uehajYw1DUwVNJRQlaApN/ATNfATElHqTQvs6RYyUopJzMPpLi0pKC0JL6ksiBVycpQRyktMycV
- ylPKKs4HKylKSS2KT6pUskIxOiWxJFVJR6k4v6gkPh+kRMlKKbE4WUlHKTm/NK9EycrQ0EhHKT8t
- rTi1RMnKQEcpJzM3EyRsAAIozixWsoqmJEjAToEGISgUQEFYlphTmqpkpaSnVKtDTbONlXSUYGab
- 6BmbU9l4E1TjzahsvCmq8YZUNh6UvhCBY2JMZeMtkVxP5Xg1NEAy20TPhMoBbwjKmEghQ+VkY0jD
- FG+ImuJNqO105DRD7Ug1R4pUapttQUOzaZjQjZATOpXDxAg5qVDbbOSSkdpmoxaLpibULbeMaJjE
- jZCTuImeKXVdbkzDxGKMWiSaUbUuMoI0hRAlLtWNp1mJa6RrgJyNTPRMqVriGkFagUghQ80kY6Rr
- gJwgqZpPjXQNkMtcEz1TSyo7nWbFrpEuWvuCqs0LI120OpraptOs6DXSNUQueqmcXAyRy10TPVOq
- Fo5GuoY0TOm0q6WNdI3QCl6q1nZGukY0LBlp18Aw0jWiYSpHqaWpnMqNUAtFM6pmfmOMepTaxiOn
- FhM96lbTxuhVqZkFNWsMY9SqlKrxakzDitQYtSKltrtpVosao9aiVHY3Sh1KbbNpVrYY07AGNdY1
- RK5BqR0mNKs+jXVpV30ao1afVA4T2tWdxroodaeJngVV+1vGNKw+jXVpV30a66JVnxZG1K0hjGhY
- GqL0zk30LKhcuaF00Kma0E3Q62ULqjbNTXQNaFbemuga0KzHYoLanjDRs6RqHjWhYZPChIZVs4ku
- 2ug5tVMLyui5iR7VjUcezqFyPjKkYUKnXf/WRNcQudNC7TBBLnJN9CyoOnxmQsO2hQlq28JEz4Kq
- A1wmNKyjTXSNaFgs0m4A3YSGbQsT1LYFVVO5KWq/3FTPgKrtFlPIMgTYILGpniFVM5Epav1vqmdA
- 1VEFU9T631TPgKr5yBS1CWCqZ0DV1ospau/cRM+Squ06U10D5PLRVM+AquN/pjRsCJiiNgRM9Qyp
- 7XTkwSjqxyvKWLepniFVW3emqJ116ucp2jUHTFGbA6Z6BlQubQxRUzyVwx2l026qZ0jVVS+mqP12
- Uz1DKhf0KMPeNHA9crOA+lkKpWVA/QKBdr13U12U3juVGwe067qboTY8qOpuM9RWB7XNRk6J1DYb
- bZwUsNhaAK2Pz5/iKQAA
+ H4sIAAAAAAAEA6pWKkpNzCnJzE2NLy5JLCpRslIyMjAy0TUw0zUwU9JByKbmpaDL5ScVpxaVJZZk
+ 5uehaTbUNTBU0lFCVoCs3wgiXZqXWVKsZKWUk5kHUlxaUlBaEl9SWZCqZGWoo5SWmZMK5SllFeeD
+ lRSlpBbFJ1UqWaEYnZJYkqqko1ScX1QSnw9SomSllFicrKSjlJxfmleiZGVkoqOUn5ZWnFqiZGWg
+ o5STmZtZomRlaAACKK4sVrKKpiREwC6BhSA0EMoSc0pTlayU9JRqdahptpGSjhLMbFM9Y3MqG2+M
+ arwZlY03QTXelMrGm6IaT+3AsUA1ntqut0Q1nsphb2iAajyVA8cQlPOREiaVA8cQLd1T23jklEPl
+ LGsIKlCRQobaAW+OGq/UTjZoid6EulnWkLaJ3gg12ZgYUtf1RmjFJZVTpRFacUnlqDVCTvTUr0uM
+ 0NI9lVOOEVrKoXLYG6MVl9Q2Hq24pGrgQBtaSGUOYKZKtbG1AItJ1uf1CQAA
headers:
- Accept-Ranges:
- - bytes
+ Cache-Control:
+ - max-age=0, no-cache
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Length:
- - '984'
+ - '387'
Content-Type:
- application/json; charset=UTF-8
Date:
- - Thu, 02 Nov 2023 13:45:30 GMT
+ - Fri, 07 Jun 2024 04:58:35 GMT
Expires:
- - Thu, 02 Nov 2023 13:46:30 GMT
+ - Fri, 07 Jun 2024 04:58:35 GMT
Last-Modified:
- - Tue, 31 Oct 2023 17:04:03 GMT
+ - Thu, 06 Jun 2024 17:04:29 GMT
+ Pragma:
+ - no-cache
+ Server:
+ - Apache
+ Set-Cookie:
+ - ak_bmsc=47D9BE5E15556CE0609ECA6AD74283A3~000000000000000000000000000000~YAAQlJUeuHw1aPCPAQAANRkQ8Rghc0UgHMPiZAV62XWGKnY4klZo+GLY7mp8DOtQLxVzPLZKOdbmnT/SNjRrHp5LEjacvILwy6/tqk5Hnmxt2TXwnIp3M5TLPWmJjZizAKOZEuuID4NUGMaSspmgMWmDg5do9WZ9v4QdcEU78hQCwi/7JyNzGBmKa39hrkGQgB8zh7sXQ98g1hTVuxjLcgBl3OrGa5ORZH5ERNdNq7vE06smayO0TtDdvEDdffILB9KtEsYfcKqgFG6wbeLRTH8UZo//S2ZeQne6AJ++iGiO+pA+7sGloMwcM2a+EkazH/XumwZhxWP8GHk0XnGy4Ky9T+FK8wgz0NLcSKPMX/XG1ef0mUrcIzpZp2zZE41Z;
+ Domain=.stlouisfed.org; Path=/; Expires=Fri, 07 Jun 2024 06:58:35 GMT; Max-Age=7200
+ Strict-Transport-Security:
+ - max-age=86400
+ Vary:
+ - Accept-Encoding
+ status:
+ code: 200
+ message: OK
+- request:
+ body: null
+ headers:
+ Accept:
+ - application/json
+ Accept-Encoding:
+ - gzip, deflate
+ Connection:
+ - keep-alive
+ Cookie:
+ - ak_bmsc=47D9BE5E15556CE0609ECA6AD74283A3~000000000000000000000000000000~YAAQlJUeuHw1aPCPAQAANRkQ8Rghc0UgHMPiZAV62XWGKnY4klZo+GLY7mp8DOtQLxVzPLZKOdbmnT/SNjRrHp5LEjacvILwy6/tqk5Hnmxt2TXwnIp3M5TLPWmJjZizAKOZEuuID4NUGMaSspmgMWmDg5do9WZ9v4QdcEU78hQCwi/7JyNzGBmKa39hrkGQgB8zh7sXQ98g1hTVuxjLcgBl3OrGa5ORZH5ERNdNq7vE06smayO0TtDdvEDdffILB9KtEsYfcKqgFG6wbeLRTH8UZo//S2ZeQne6AJ++iGiO+pA+7sGloMwcM2a+EkazH/XumwZhxWP8GHk0XnGy4Ky9T+FK8wgz0NLcSKPMX/XG1ef0mUrcIzpZp2zZE41Z
+ method: GET
+ uri: https://api.stlouisfed.org/fred/series?api_key=MOCK_API_KEY&file_type=json&series_id=RIFSPPAAAD30NB
+ response:
+ body:
+ string: !!binary |
+ H4sIAAAAAAAEA6pWKkpNzCnJzE2NLy5JLCpRslIyMjAy0TUw0zUwU9JByKbmpaDLFacWZaYWFytZ
+ RVcrZYJkgzzdggMCHB0dXYwN/JyQdZNsdklmSU6qkpWSsYGuS2KlgqOjgmNxcWqJrlNicnZqioJz
+ fm5ualFyZmKOQkBiQWqRgmdeSWpRanGJQlBiSaqSjlJ+UnFqUVliSWZ+HpLHDAx1QcgITQGa30yV
+ dJTSilILS1PzkiuVrJRcEjNzKpHF4osz8sFB5aKko1Sal1lSrGSlFJBalJyaVwITgatRVdJRKk5N
+ LM7PS8yJT0zJKi0uyQWps1Lyyy9RCIbK5FQqOILlUlOwq4eb5xfsqKSjlJNYXBJfWpCSWJIKCnlE
+ nCkYGlkZmFgZWeoagPxRkF9QmpNYlFlSqWRlaKmjlJdfkgpyrVt+kUJuflGqQmZeWn5RLjigdBQK
+ clITi1MVilNTFTJKSgqsYvRj9MvLy/XSUlNSixJzilJBgZqql55fFqNflApWDFhxjH5yQYx+YlJ+
+ aYleRkmunlJtbC0AeMHAjFYCAAA=
+ headers:
+ Cache-Control:
+ - max-age=0, no-cache
+ Connection:
+ - keep-alive
+ Content-Encoding:
+ - gzip
+ Content-Length:
+ - '419'
+ Content-Type:
+ - application/json; charset=UTF-8
+ Date:
+ - Fri, 07 Jun 2024 04:58:35 GMT
+ Expires:
+ - Fri, 07 Jun 2024 04:58:35 GMT
+ Last-Modified:
+ - Thu, 06 Jun 2024 17:04:29 GMT
+ Pragma:
+ - no-cache
+ Server:
+ - Apache
+ Set-Cookie:
+ - ak_bmsc=47D9BE5E15556CE0609ECA6AD74283A3~000000000000000000000000000000~YAAQlJUeuJc1aPCPAQAAvhkQ8RjdYrxcLCShD13TKH2G9ACe1fVrusjEUz9KloUqVJYOx6DaZHfDY+cxAK04Qzdm7trNRvjpgwYsaRLMK226qzxdn+Jjv9bt+QEzmEwhMb2Zfqj4drMCP2jUqGpdrSThOeveLbqsN+ZLADrqruI5OA2IIcYHPhu8FPtO/6cIH3cCs1I6SvH2vAbAgLthRGKFkLf+NoOMFDLpBu2n37dPdSbRBhCjlRVf3bivcRDT5TbaRSeMYwgN3z6ruk1JCh3UoaKa9MNoTXNhbHdEZjLDSKU3AGFc7Sqc3HcrzP6ux8gmqKJv+GNcpz4UqgORC6RN03xlsIxN0ap+w5ne9QG/B5kpd/JDS6UWPushJuXHAOhn6gQnhpuhtQ==;
+ Domain=.stlouisfed.org; Path=/; Expires=Fri, 07 Jun 2024 06:58:35 GMT; Max-Age=7200
+ Strict-Transport-Security:
+ - max-age=86400
Vary:
- Accept-Encoding
- x-rate-limit-limit:
- - '120'
- x-rate-limit-remaining:
- - '106'
status:
code: 200
message: OK
diff --git a/openbb_platform/providers/fred/tests/test_fred_fetchers.py b/openbb_platform/providers/fred/tests/test_fred_fetchers.py
index 676d3aff547..a82c2857202 100644
-