finance_dev 0.9.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- finance_dev/__init__.py +18 -0
- finance_dev/_hooks/__init__.py +7 -0
- finance_dev/_hooks/clientcredentials.py +319 -0
- finance_dev/_hooks/oauth2scopes.py +50 -0
- finance_dev/_hooks/registration.py +13 -0
- finance_dev/_hooks/sdkhooks.py +82 -0
- finance_dev/_hooks/types.py +125 -0
- finance_dev/_version.py +16 -0
- finance_dev/accounts.py +797 -0
- finance_dev/alternativedata.py +4830 -0
- finance_dev/analytics.py +3757 -0
- finance_dev/basesdk.py +393 -0
- finance_dev/calendar.py +1523 -0
- finance_dev/chart.py +1881 -0
- finance_dev/company.py +1105 -0
- finance_dev/corporateactions.py +1795 -0
- finance_dev/economy.py +1153 -0
- finance_dev/errors/__init__.py +94 -0
- finance_dev/errors/apierror.py +41 -0
- finance_dev/errors/authenticationerrorenvelope.py +43 -0
- finance_dev/errors/badrequest.py +34 -0
- finance_dev/errors/errorenvelope.py +42 -0
- finance_dev/errors/errorresponse.py +45 -0
- finance_dev/errors/financedevapierror.py +31 -0
- finance_dev/errors/forbidden.py +34 -0
- finance_dev/errors/internalservererror.py +35 -0
- finance_dev/errors/no_response_error.py +18 -0
- finance_dev/errors/notfound.py +34 -0
- finance_dev/errors/orderhistorybadrequest.py +35 -0
- finance_dev/errors/predorderserrorenvelope.py +42 -0
- finance_dev/errors/responsevalidationerror.py +28 -0
- finance_dev/errors/unauthorized.py +34 -0
- finance_dev/estimates.py +1906 -0
- finance_dev/etf.py +1108 -0
- finance_dev/filings.py +586 -0
- finance_dev/financials.py +4079 -0
- finance_dev/history.py +477 -0
- finance_dev/httpclient.py +126 -0
- finance_dev/indices.py +2308 -0
- finance_dev/logos.py +692 -0
- finance_dev/market.py +1825 -0
- finance_dev/markets.py +952 -0
- finance_dev/models/__init__.py +4568 -0
- finance_dev/models/accountbalancev2.py +340 -0
- finance_dev/models/accountitem.py +78 -0
- finance_dev/models/accountposition.py +147 -0
- finance_dev/models/aggregatetechnicalindicatorsresponse.py +192 -0
- finance_dev/models/analystinsightitem.py +161 -0
- finance_dev/models/analystinsightsresponse.py +39 -0
- finance_dev/models/apperror.py +123 -0
- finance_dev/models/authenticationerrordetail.py +58 -0
- finance_dev/models/bankbranchesresponse.py +96 -0
- finance_dev/models/basicfinancials.py +243 -0
- finance_dev/models/bullbearanalysisresponse.py +150 -0
- finance_dev/models/cancelorderop.py +40 -0
- finance_dev/models/cancelordrequest_union.py +287 -0
- finance_dev/models/cancelordresponse.py +115 -0
- finance_dev/models/cashflowstatement.py +290 -0
- finance_dev/models/cashflowstatementsresponse.py +61 -0
- finance_dev/models/chartbars.py +111 -0
- finance_dev/models/chartconfig.py +81 -0
- finance_dev/models/chartresolution.py +46 -0
- finance_dev/models/companyesgresponse.py +408 -0
- finance_dev/models/companyexecutive.py +70 -0
- finance_dev/models/companyexecutiveresponse.py +39 -0
- finance_dev/models/companypeersresponse.py +38 -0
- finance_dev/models/companypresentationresponse.py +96 -0
- finance_dev/models/companyprofile.py +255 -0
- finance_dev/models/conferencecallsresponse.py +169 -0
- finance_dev/models/congressionaltradingresponse.py +138 -0
- finance_dev/models/covid19uscasesresponse.py +79 -0
- finance_dev/models/createconfigwatchlistop.py +40 -0
- finance_dev/models/createwatchlistrequest.py +43 -0
- finance_dev/models/dailymarketsummaryresponse.py +73 -0
- finance_dev/models/deleteconfigwatchlistbyidop.py +53 -0
- finance_dev/models/dividenditem.py +125 -0
- finance_dev/models/dividendsresponse.py +61 -0
- finance_dev/models/earningrelease.py +291 -0
- finance_dev/models/earningscallliveresponse.py +103 -0
- finance_dev/models/earningsqualityscoreresponse.py +140 -0
- finance_dev/models/earningssurprisesresponse.py +125 -0
- finance_dev/models/ebitdaestimatesresponse.py +176 -0
- finance_dev/models/ebitestimatesresponse.py +176 -0
- finance_dev/models/economicscalendarevent.py +160 -0
- finance_dev/models/economicsindicator.py +87 -0
- finance_dev/models/epsestimatesresponse.py +176 -0
- finance_dev/models/equitydetailsdto.py +569 -0
- finance_dev/models/errorcode.py +48 -0
- finance_dev/models/etblistresponse.py +43 -0
- finance_dev/models/etbsearchrequest.py +21 -0
- finance_dev/models/etbsearchresponse.py +43 -0
- finance_dev/models/etfcountryallocationresponse.py +113 -0
- finance_dev/models/etfholdingsresponse.py +163 -0
- finance_dev/models/etfprofileresponse.py +234 -0
- finance_dev/models/etfsectorallocationresponse.py +113 -0
- finance_dev/models/exchangecode.py +90 -0
- finance_dev/models/fdaadvisorycommitteecalendarresponse.py +88 -0
- finance_dev/models/filingsimilarityrecord.py +115 -0
- finance_dev/models/filingssimilarityindexdatawrapper.py +52 -0
- finance_dev/models/filingssimilarityindexresponse.py +42 -0
- finance_dev/models/financialratiosresponse.py +252 -0
- finance_dev/models/financialsreporteddatawrapper.py +49 -0
- finance_dev/models/financialsreportedresponse.py +42 -0
- finance_dev/models/financialsrevenuebreakdowndatawrapper.py +49 -0
- finance_dev/models/financialsrevenuebreakdownresponse.py +42 -0
- finance_dev/models/financialsstatementsdatawrapper.py +44 -0
- finance_dev/models/financialsstatementsresponse.py +42 -0
- finance_dev/models/financialstatement.py +171 -0
- finance_dev/models/financialstatementtype.py +14 -0
- finance_dev/models/getaccountbalanceop.py +53 -0
- finance_dev/models/getaccountpositionsop.py +53 -0
- finance_dev/models/getaccountsresponse.py +22 -0
- finance_dev/models/getaggregatetechnicalindicatorsop.py +94 -0
- finance_dev/models/getanalystinsightsop.py +164 -0
- finance_dev/models/getbankbranchesop.py +53 -0
- finance_dev/models/getbaseeventop.py +87 -0
- finance_dev/models/getbullbearanalysisop.py +91 -0
- finance_dev/models/getcashflowstatementsop.py +564 -0
- finance_dev/models/getchartconfigop.py +40 -0
- finance_dev/models/getcharthistoryop.py +122 -0
- finance_dev/models/getcharttimeop.py +39 -0
- finance_dev/models/getcompanyesgop.py +53 -0
- finance_dev/models/getcompanyexecutivesop.py +56 -0
- finance_dev/models/getcompanymetricsop.py +68 -0
- finance_dev/models/getcompanypeersop.py +53 -0
- finance_dev/models/getcompanypresentationop.py +56 -0
- finance_dev/models/getcompanyprofileop.py +86 -0
- finance_dev/models/getconferencecallsop.py +111 -0
- finance_dev/models/getconfigwatchlistbyidop.py +53 -0
- finance_dev/models/getconfigwatchlistsop.py +40 -0
- finance_dev/models/getcongressionaltradingop.py +73 -0
- finance_dev/models/getcovid19uscasesop.py +43 -0
- finance_dev/models/getdailymarketsummaryop.py +92 -0
- finance_dev/models/getdividendsop.py +294 -0
- finance_dev/models/getearningscalendarop.py +87 -0
- finance_dev/models/getearningscallliveop.py +91 -0
- finance_dev/models/getearningsqualityscoreop.py +81 -0
- finance_dev/models/getearningssurprisesop.py +80 -0
- finance_dev/models/getebitdaestimatesop.py +91 -0
- finance_dev/models/getebitestimatesop.py +88 -0
- finance_dev/models/geteconomicscalendarop.py +92 -0
- finance_dev/models/geteconomicscalendarresponse.py +56 -0
- finance_dev/models/getepsestimatesop.py +88 -0
- finance_dev/models/getequitydetailsop.py +56 -0
- finance_dev/models/getequitydetailsresponse.py +45 -0
- finance_dev/models/getetblistop.py +40 -0
- finance_dev/models/getetfcountryallocationop.py +80 -0
- finance_dev/models/getetfholdingsop.py +96 -0
- finance_dev/models/getetfprofileop.py +77 -0
- finance_dev/models/getetfsectorallocationop.py +80 -0
- finance_dev/models/geteventcontractsop.py +87 -0
- finance_dev/models/getfdaadvisorycommitteecalendarop.py +47 -0
- finance_dev/models/getfilingssimilarityindexop.py +102 -0
- finance_dev/models/getfinancialratiosop.py +612 -0
- finance_dev/models/getfinancialstatementsop.py +117 -0
- finance_dev/models/getfundownershipop.py +77 -0
- finance_dev/models/gethistoricaldataop.py +61 -0
- finance_dev/models/gethistoricalesgop.py +53 -0
- finance_dev/models/gethistorybatchop.py +74 -0
- finance_dev/models/gethistoryop.py +123 -0
- finance_dev/models/getincomestatementsop.py +564 -0
- finance_dev/models/getindexbarop.py +140 -0
- finance_dev/models/getindexbarsop.py +149 -0
- finance_dev/models/getindexchartbarsop.py +178 -0
- finance_dev/models/getindexrealtimevaluesop.py +94 -0
- finance_dev/models/getinflationexpectationsop.py +157 -0
- finance_dev/models/getinflationop.py +154 -0
- finance_dev/models/getinsidertransactionsop.py +90 -0
- finance_dev/models/getinstitutionalownershipop.py +99 -0
- finance_dev/models/getinstitutionalportfolioop.py +75 -0
- finance_dev/models/getinvestmentthemeop.py +68 -0
- finance_dev/models/getipocalendarop.py +63 -0
- finance_dev/models/getlobbyingop.py +70 -0
- finance_dev/models/getmarketbreadthop.py +40 -0
- finance_dev/models/getmarketholidaysop.py +65 -0
- finance_dev/models/getmarketstatusop.py +65 -0
- finance_dev/models/getmergersandacquisitionsop.py +113 -0
- finance_dev/models/getnetinflowop.py +40 -0
- finance_dev/models/getnewsbyidop.py +73 -0
- finance_dev/models/getnewsop.py +98 -0
- finance_dev/models/getnewssentimentop.py +53 -0
- finance_dev/models/getoptionchainsnapshotop.py +244 -0
- finance_dev/models/getoptioncontractsnapshotop.py +69 -0
- finance_dev/models/getoptiondetailsop.py +56 -0
- finance_dev/models/getoptiondetailsresponse.py +45 -0
- finance_dev/models/getoptionlasttradeop.py +56 -0
- finance_dev/models/getoptionopencloseop.py +66 -0
- finance_dev/models/getoptionpreviousdayop.py +56 -0
- finance_dev/models/getoptionquotesop.py +177 -0
- finance_dev/models/getoptionsactivityop.py +111 -0
- finance_dev/models/getoptionsetfstopvolumeop.py +70 -0
- finance_dev/models/getoptionsstockstopgainersop.py +70 -0
- finance_dev/models/getoptionsstockstopvolumeop.py +70 -0
- finance_dev/models/getoptionsunusualactivityop.py +100 -0
- finance_dev/models/getoptiontradesop.py +177 -0
- finance_dev/models/getordersv2response.py +66 -0
- finance_dev/models/getownershipdataop.py +77 -0
- finance_dev/models/getpositionsresponse.py +39 -0
- finance_dev/models/getpredictionorderop.py +88 -0
- finance_dev/models/getpricetargetop.py +53 -0
- finance_dev/models/getquotesop.py +53 -0
- finance_dev/models/getratingsop.py +164 -0
- finance_dev/models/getratingsresponse.py +39 -0
- finance_dev/models/getreportedfinancialsop.py +127 -0
- finance_dev/models/getrevenuebreakdownop.py +85 -0
- finance_dev/models/getrevenueestimatesop.py +91 -0
- finance_dev/models/getsecfilingsop.py +113 -0
- finance_dev/models/getsectortickersop.py +124 -0
- finance_dev/models/getsectorwisechangeop.py +84 -0
- finance_dev/models/getshortinterestop.py +334 -0
- finance_dev/models/getshortvolumeop.py +333 -0
- finance_dev/models/getsocialsentimentop.py +90 -0
- finance_dev/models/getspinoffsop.py +112 -0
- finance_dev/models/getstockaggregatesop.py +174 -0
- finance_dev/models/getstocklastquoteop.py +56 -0
- finance_dev/models/getstocklasttradeop.py +56 -0
- finance_dev/models/getstockopencloseop.py +90 -0
- finance_dev/models/getstockpreviousdayop.py +80 -0
- finance_dev/models/getstockquotesop.py +177 -0
- finance_dev/models/getstocksnapshotsop.py +82 -0
- finance_dev/models/getstocksplitsop.py +243 -0
- finance_dev/models/getstocktradesop.py +177 -0
- finance_dev/models/getsupplychainop.py +53 -0
- finance_dev/models/getsupportresistancelevelsop.py +90 -0
- finance_dev/models/getsymbolinfoop.py +53 -0
- finance_dev/models/gettechnicalindicatorop.py +172 -0
- finance_dev/models/gettechnicalpatternsop.py +88 -0
- finance_dev/models/gettenderoffersop.py +112 -0
- finance_dev/models/gettickhistoryop.py +104 -0
- finance_dev/models/gettopgainersop.py +78 -0
- finance_dev/models/gettoplosersop.py +78 -0
- finance_dev/models/gettopmostactiveop.py +78 -0
- finance_dev/models/gettranscriptop.py +53 -0
- finance_dev/models/gettreasuryyieldsop.py +157 -0
- finance_dev/models/getunifiedsnapshotop.py +223 -0
- finance_dev/models/getupgradesdowngradesop.py +91 -0
- finance_dev/models/getusaspendingop.py +70 -0
- finance_dev/models/getuseraccountsop.py +40 -0
- finance_dev/models/getusptopatentsop.py +70 -0
- finance_dev/models/getvisaapplicationsop.py +73 -0
- finance_dev/models/historicalesgresponse.py +439 -0
- finance_dev/models/httpmetadata.py +24 -0
- finance_dev/models/incomestatement.py +296 -0
- finance_dev/models/incomestatementsresponse.py +61 -0
- finance_dev/models/indexbarresponse.py +194 -0
- finance_dev/models/indexbarsresponse.py +123 -0
- finance_dev/models/indexchartbarsresponse.py +213 -0
- finance_dev/models/indexgroupsresponse.py +78 -0
- finance_dev/models/indexlistresponse.py +95 -0
- finance_dev/models/indexsearchresponse.py +93 -0
- finance_dev/models/indicesbygroupresponse.py +93 -0
- finance_dev/models/indicesidentifiertype.py +28 -0
- finance_dev/models/indicesrealtimeindexinfo.py +67 -0
- finance_dev/models/indicesrealtimeindexvalue.py +157 -0
- finance_dev/models/indicesrealtimevaluesitem.py +80 -0
- finance_dev/models/indicesrealtimevaluesresponse.py +42 -0
- finance_dev/models/inflationexpectationsresponse.py +140 -0
- finance_dev/models/inflationresponse.py +132 -0
- finance_dev/models/insidertransaction.py +97 -0
- finance_dev/models/insidertransactionsresponse.py +39 -0
- finance_dev/models/institutionalholding.py +77 -0
- finance_dev/models/institutionalownershipresponse.py +39 -0
- finance_dev/models/institutionalportfolioresponse.py +39 -0
- finance_dev/models/investmentthemeid.py +35 -0
- finance_dev/models/investmentthemeresponse.py +80 -0
- finance_dev/models/ipocalendarresponse.py +39 -0
- finance_dev/models/ipoitem.py +93 -0
- finance_dev/models/listactiveordersop.py +87 -0
- finance_dev/models/listcategoriesop.py +79 -0
- finance_dev/models/listindexgroupsop.py +40 -0
- finance_dev/models/listindicesbygroupop.py +58 -0
- finance_dev/models/listindicesop.py +91 -0
- finance_dev/models/listoptioncontractsop.py +66 -0
- finance_dev/models/listoptionexpirydatesop.py +56 -0
- finance_dev/models/listorderhistoryop.py +139 -0
- finance_dev/models/listpredictionordersop.py +134 -0
- finance_dev/models/listtranscriptsop.py +53 -0
- finance_dev/models/lobbyingresponse.py +166 -0
- finance_dev/models/logosearchresponse.py +152 -0
- finance_dev/models/logosyncresponse.py +277 -0
- finance_dev/models/marketbreadth.py +97 -0
- finance_dev/models/marketbreadthresponse.py +44 -0
- finance_dev/models/marketholiday.py +56 -0
- finance_dev/models/marketholidayresponse.py +39 -0
- finance_dev/models/marketstatus.py +67 -0
- finance_dev/models/mergersandacquisitionsresponse.py +186 -0
- finance_dev/models/metricseriespoint.py +43 -0
- finance_dev/models/netinflow.py +81 -0
- finance_dev/models/netinflowresponse.py +44 -0
- finance_dev/models/newsitem.py +102 -0
- finance_dev/models/newslistresponse.py +128 -0
- finance_dev/models/newssentimentresponse.py +176 -0
- finance_dev/models/newstypeenum.py +16 -0
- finance_dev/models/optionchainsnapshotresponse.py +64 -0
- finance_dev/models/optioncontractsnapshotresponse.py +64 -0
- finance_dev/models/optioncontractsnapshotrow.py +164 -0
- finance_dev/models/optioncontractsresponse.py +131 -0
- finance_dev/models/optiondetailsdto.py +72 -0
- finance_dev/models/optionexpirydatesresponse.py +53 -0
- finance_dev/models/optionlasttraderesponse.py +169 -0
- finance_dev/models/optionopencloseresponse.py +97 -0
- finance_dev/models/optionpreviousdayresponse.py +89 -0
- finance_dev/models/optionquotesresponse.py +138 -0
- finance_dev/models/optionsactivityresponse.py +265 -0
- finance_dev/models/optionsnapshotcontractdetails.py +85 -0
- finance_dev/models/optionsnapshotdaybar.py +107 -0
- finance_dev/models/optionsnapshotgreeks.py +67 -0
- finance_dev/models/optionsnapshotlastquote.py +116 -0
- finance_dev/models/optionsnapshotlasttrade.py +102 -0
- finance_dev/models/optionsnapshotunderlying.py +86 -0
- finance_dev/models/optionsscreeneritem.py +151 -0
- finance_dev/models/optionsunusualactivityresponse.py +62 -0
- finance_dev/models/optionsunusualactivitytrade.py +103 -0
- finance_dev/models/optiontradesresponse.py +132 -0
- finance_dev/models/orderrequesttimeinforceenum.py +29 -0
- finance_dev/models/ordersideenum.py +20 -0
- finance_dev/models/ordertypeenum.py +20 -0
- finance_dev/models/ordleg.py +162 -0
- finance_dev/models/ordresponse.py +202 -0
- finance_dev/models/ownershipdataresponse.py +39 -0
- finance_dev/models/ownershiprecord.py +74 -0
- finance_dev/models/placeorderop.py +40 -0
- finance_dev/models/placeordrequest_union.py +335 -0
- finance_dev/models/placepredictionorderop.py +114 -0
- finance_dev/models/predmdbaseevent.py +62 -0
- finance_dev/models/predmdbaseeventhit.py +53 -0
- finance_dev/models/predmdbaseeventsearchresult.py +46 -0
- finance_dev/models/predmdbaseeventwithevents.py +32 -0
- finance_dev/models/predmdbatchhistoryrequest.py +16 -0
- finance_dev/models/predmdbatchhistoryresponse.py +16 -0
- finance_dev/models/predmdcategory.py +48 -0
- finance_dev/models/predmdcontract.py +177 -0
- finance_dev/models/predmdcontracthit.py +157 -0
- finance_dev/models/predmdcontractsearchresult.py +46 -0
- finance_dev/models/predmdevent.py +136 -0
- finance_dev/models/predmdeventhit.py +73 -0
- finance_dev/models/predmdeventsearchresult.py +46 -0
- finance_dev/models/predmdeventwithcontracts.py +22 -0
- finance_dev/models/predmdhistoryrequest.py +59 -0
- finance_dev/models/predmdhistoryresponse.py +53 -0
- finance_dev/models/predmdtick.py +53 -0
- finance_dev/models/predordersapperror.py +78 -0
- finance_dev/models/predordersorder.py +267 -0
- finance_dev/models/predordersorderdetail.py +26 -0
- finance_dev/models/predordersorderpage.py +45 -0
- finance_dev/models/predordersorderreport.py +88 -0
- finance_dev/models/predordersplaceorderrequest.py +159 -0
- finance_dev/models/previeworderop.py +40 -0
- finance_dev/models/previeworderresponse.py +127 -0
- finance_dev/models/pricetargetresponse.py +89 -0
- finance_dev/models/quotedata.py +49 -0
- finance_dev/models/quotesresponse.py +62 -0
- finance_dev/models/quotevalues.py +114 -0
- finance_dev/models/rating.py +193 -0
- finance_dev/models/ratingsaccuracy.py +242 -0
- finance_dev/models/replaceconfigwatchlistsop.py +40 -0
- finance_dev/models/replaceorderop.py +40 -0
- finance_dev/models/replaceordrequest_union.py +367 -0
- finance_dev/models/replaceordresponse.py +144 -0
- finance_dev/models/reportedbsitem.py +53 -0
- finance_dev/models/reportedfiling.py +110 -0
- finance_dev/models/reportedreport.py +39 -0
- finance_dev/models/reportingfrequency.py +16 -0
- finance_dev/models/revenuebreakdownaxis.py +52 -0
- finance_dev/models/revenuebreakdowndatapoint.py +58 -0
- finance_dev/models/revenuebreakdownentry.py +51 -0
- finance_dev/models/revenuebreakdowninner.py +75 -0
- finance_dev/models/revenueestimatesresponse.py +176 -0
- finance_dev/models/screenclause.py +70 -0
- finance_dev/models/screengroup.py +75 -0
- finance_dev/models/searchetbsymbolsop.py +40 -0
- finance_dev/models/searchindicesop.py +55 -0
- finance_dev/models/searchlogosop.py +158 -0
- finance_dev/models/searchmarketsymbolsop.py +80 -0
- finance_dev/models/searchop.py +232 -0
- finance_dev/models/searchsymbolitem.py +76 -0
- finance_dev/models/searchsymbolresponseitem.py +71 -0
- finance_dev/models/searchsymbolsop.py +77 -0
- finance_dev/models/secfiling.py +91 -0
- finance_dev/models/secfilingsresponse.py +39 -0
- finance_dev/models/sectoravgchange.py +50 -0
- finance_dev/models/security.py +59 -0
- finance_dev/models/securitytypeenum.py +16 -0
- finance_dev/models/shortinterestresponse.py +126 -0
- finance_dev/models/shortvolumeresponse.py +198 -0
- finance_dev/models/socialsentimentresponse.py +124 -0
- finance_dev/models/sortorderenum.py +13 -0
- finance_dev/models/spinoffsresponse.py +136 -0
- finance_dev/models/stockaggregatesresponse.py +92 -0
- finance_dev/models/stocklastquoteresponse.py +175 -0
- finance_dev/models/stocklasttraderesponse.py +169 -0
- finance_dev/models/stockohlcbar.py +85 -0
- finance_dev/models/stockopencloseresponse.py +109 -0
- finance_dev/models/stockpreviousdayresponse.py +86 -0
- finance_dev/models/stockquotesresponse.py +170 -0
- finance_dev/models/stockscreenerop.py +144 -0
- finance_dev/models/stockscreenerrequest.py +131 -0
- finance_dev/models/stockscreenerresponse.py +197 -0
- finance_dev/models/stocksnapshotsresponse.py +454 -0
- finance_dev/models/stocksplitsresponse.py +144 -0
- finance_dev/models/stocktradesresponse.py +164 -0
- finance_dev/models/supplychainresponse.py +158 -0
- finance_dev/models/supportresistancelevelsresponse.py +68 -0
- finance_dev/models/symboldetails.py +119 -0
- finance_dev/models/symbolerror.py +43 -0
- finance_dev/models/symbolinfo.py +183 -0
- finance_dev/models/synclogosop.py +146 -0
- finance_dev/models/technicalindicatorresponse.py +43 -0
- finance_dev/models/technicalindicatortype.py +21 -0
- finance_dev/models/technicalpatternsresponse.py +249 -0
- finance_dev/models/tenderofferidentifiertype.py +26 -0
- finance_dev/models/tenderoffersresponse.py +548 -0
- finance_dev/models/tickchartbars.py +104 -0
- finance_dev/models/tickresolution.py +20 -0
- finance_dev/models/timeinforceenum.py +26 -0
- finance_dev/models/tradeorderlegv2.py +164 -0
- finance_dev/models/tradeorderv2.py +434 -0
- finance_dev/models/transcriptresponse.py +162 -0
- finance_dev/models/transcriptsresponse.py +89 -0
- finance_dev/models/treasuryyieldsresponse.py +160 -0
- finance_dev/models/unifiedsnapshotresponse.py +308 -0
- finance_dev/models/updateconfigwatchlistbyidop.py +65 -0
- finance_dev/models/updatewatchlistrequest_union.py +134 -0
- finance_dev/models/upgradesdowngradesresponse.py +98 -0
- finance_dev/models/usaspendingresponse.py +222 -0
- finance_dev/models/usptopatentsresponse.py +134 -0
- finance_dev/models/visaapplicationsresponse.py +228 -0
- finance_dev/models/watchlist.py +68 -0
- finance_dev/models/watchlistrequest.py +43 -0
- finance_dev/models/watchlistresponse.py +44 -0
- finance_dev/news_sdk.py +829 -0
- finance_dev/options.py +3443 -0
- finance_dev/orders.py +1907 -0
- finance_dev/ownership.py +1386 -0
- finance_dev/predictions.py +29 -0
- finance_dev/predictions_orders.py +852 -0
- finance_dev/py.typed +1 -0
- finance_dev/sdk.py +347 -0
- finance_dev/sdkconfiguration.py +50 -0
- finance_dev/signals.py +338 -0
- finance_dev/stocks.py +3131 -0
- finance_dev/technicalanalysis_sdk.py +1137 -0
- finance_dev/types/__init__.py +25 -0
- finance_dev/types/base64fileinput.py +44 -0
- finance_dev/types/basemodel.py +78 -0
- finance_dev/utils/__init__.py +181 -0
- finance_dev/utils/annotations.py +80 -0
- finance_dev/utils/datetimes.py +42 -0
- finance_dev/utils/dynamic_imports.py +55 -0
- finance_dev/utils/enums.py +135 -0
- finance_dev/utils/eventstreaming.py +327 -0
- finance_dev/utils/forms.py +240 -0
- finance_dev/utils/headers.py +137 -0
- finance_dev/utils/logger.py +23 -0
- finance_dev/utils/metadata.py +120 -0
- finance_dev/utils/queryparams.py +218 -0
- finance_dev/utils/requestbodies.py +68 -0
- finance_dev/utils/retries.py +373 -0
- finance_dev/utils/security.py +199 -0
- finance_dev/utils/serializers.py +327 -0
- finance_dev/utils/unmarshal_json_response.py +39 -0
- finance_dev/utils/url.py +155 -0
- finance_dev/utils/values.py +143 -0
- finance_dev/watchlist_sdk.py +1583 -0
- finance_dev/websocket/__init__.py +57 -0
- finance_dev/websocket/account.py +5 -0
- finance_dev/websocket/auth.py +124 -0
- finance_dev/websocket/chart.py +5 -0
- finance_dev/websocket/codec.py +66 -0
- finance_dev/websocket/config.py +52 -0
- finance_dev/websocket/errors.py +54 -0
- finance_dev/websocket/market.py +5 -0
- finance_dev/websocket/models/__init__.py +52 -0
- finance_dev/websocket/models/account.py +60 -0
- finance_dev/websocket/models/chart.py +44 -0
- finance_dev/websocket/models/common.py +85 -0
- finance_dev/websocket/models/market.py +113 -0
- finance_dev/websocket/resources.py +327 -0
- finance_dev/websocket/sdk.py +13 -0
- finance_dev/websocket/transport/async_connection.py +493 -0
- finance_dev/websocket/transport/base.py +78 -0
- finance_dev/websocket/transport/sync_connection.py +470 -0
- finance_dev-0.9.0.dist-info/METADATA +913 -0
- finance_dev-0.9.0.dist-info/RECORD +486 -0
- finance_dev-0.9.0.dist-info/WHEEL +5 -0
- finance_dev-0.9.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,439 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
# @generated-id: 6ef6399051c7
|
|
3
|
+
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
from finance_dev.types import (
|
|
6
|
+
BaseModel,
|
|
7
|
+
Nullable,
|
|
8
|
+
OptionalNullable,
|
|
9
|
+
UNSET,
|
|
10
|
+
UNSET_SENTINEL,
|
|
11
|
+
)
|
|
12
|
+
import pydantic
|
|
13
|
+
from pydantic import model_serializer
|
|
14
|
+
from typing import List, Optional
|
|
15
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class HistoricalEsgResponseDataDataTypedDict(TypedDict):
|
|
19
|
+
r"""Detailed ESG disclosures and metrics for the period."""
|
|
20
|
+
|
|
21
|
+
adult_content: NotRequired[bool]
|
|
22
|
+
r"""Whether the company has involvement in adult content."""
|
|
23
|
+
alcoholic: NotRequired[bool]
|
|
24
|
+
r"""Whether the company has involvement in alcoholic beverages."""
|
|
25
|
+
animal_testing: NotRequired[bool]
|
|
26
|
+
r"""Whether the company is involved in animal testing."""
|
|
27
|
+
antitrust: NotRequired[str]
|
|
28
|
+
r"""Antitrust-related disclosure for the company, as free text."""
|
|
29
|
+
asian_employee_percentage: NotRequired[float]
|
|
30
|
+
r"""Percentage of the company workforce that is Asian."""
|
|
31
|
+
asian_management_percentage: NotRequired[float]
|
|
32
|
+
r"""Percentage of company management that is Asian."""
|
|
33
|
+
black_employee_percentage: NotRequired[float]
|
|
34
|
+
r"""Percentage of the company workforce that is Black."""
|
|
35
|
+
black_management_percentage: NotRequired[float]
|
|
36
|
+
r"""Percentage of company management that is Black."""
|
|
37
|
+
carbon_reduction_policy: NotRequired[str]
|
|
38
|
+
r"""Description of the company carbon reduction policy."""
|
|
39
|
+
catholic: NotRequired[bool]
|
|
40
|
+
r"""Whether the company is flagged as conflicting with Catholic values screens."""
|
|
41
|
+
co2_emission_scope1: NotRequired[int]
|
|
42
|
+
r"""Reported direct (Scope 1) CO2 emissions."""
|
|
43
|
+
co2_emission_scope2: NotRequired[int]
|
|
44
|
+
r"""Reported indirect (Scope 2) CO2 emissions from purchased energy."""
|
|
45
|
+
co2_emission_scope3: NotRequired[int]
|
|
46
|
+
r"""Reported other indirect (Scope 3) CO2 emissions."""
|
|
47
|
+
co2_emission_total: NotRequired[int]
|
|
48
|
+
r"""Reported total CO2 emissions."""
|
|
49
|
+
coal_energy: NotRequired[bool]
|
|
50
|
+
r"""Whether the company has involvement in coal energy."""
|
|
51
|
+
ecofriendly_packaging: NotRequired[bool]
|
|
52
|
+
r"""Whether the company uses eco-friendly packaging."""
|
|
53
|
+
environmental_reporting: NotRequired[bool]
|
|
54
|
+
r"""Whether the company publishes environmental reporting."""
|
|
55
|
+
firearms: NotRequired[bool]
|
|
56
|
+
r"""Whether the company has involvement in firearms."""
|
|
57
|
+
fuel_efficiency_consumption: NotRequired[bool]
|
|
58
|
+
r"""Whether the company reports fuel efficiency or consumption measures."""
|
|
59
|
+
gambling: NotRequired[bool]
|
|
60
|
+
r"""Whether the company has involvement in gambling."""
|
|
61
|
+
gmo: NotRequired[bool]
|
|
62
|
+
r"""Whether the company has involvement in genetically modified organisms."""
|
|
63
|
+
hazardous_substances: NotRequired[bool]
|
|
64
|
+
r"""Whether the company handles hazardous substances."""
|
|
65
|
+
hispanic_latino_employee_percentage: NotRequired[float]
|
|
66
|
+
r"""Percentage of the company workforce that is Hispanic or Latino."""
|
|
67
|
+
hispanic_latino_management_percentage: NotRequired[float]
|
|
68
|
+
r"""Percentage of company management that is Hispanic or Latino."""
|
|
69
|
+
human_rights_policy: NotRequired[bool]
|
|
70
|
+
r"""Whether the company has a human rights policy."""
|
|
71
|
+
military_contract: NotRequired[bool]
|
|
72
|
+
r"""Whether the company holds military contracts."""
|
|
73
|
+
nuclear: NotRequired[bool]
|
|
74
|
+
r"""Whether the company has involvement in nuclear energy."""
|
|
75
|
+
pesticides: NotRequired[Nullable[str]]
|
|
76
|
+
r"""Pesticide-related disclosure for the company, or null when not available."""
|
|
77
|
+
recall_policy_safety: NotRequired[bool]
|
|
78
|
+
r"""Whether the company has a product recall and safety policy."""
|
|
79
|
+
recycling_policy: NotRequired[bool]
|
|
80
|
+
r"""Whether the company has a recycling policy."""
|
|
81
|
+
stakeholder_engagement: NotRequired[bool]
|
|
82
|
+
r"""Whether the company reports stakeholder engagement."""
|
|
83
|
+
tobacco: NotRequired[bool]
|
|
84
|
+
r"""Whether the company has involvement in tobacco."""
|
|
85
|
+
total_women_percentage: NotRequired[int]
|
|
86
|
+
r"""Percentage of the company workforce that is women."""
|
|
87
|
+
water_efficiency_consumption: NotRequired[bool]
|
|
88
|
+
r"""Whether the company reports water efficiency or consumption measures."""
|
|
89
|
+
white_employee_percentage: NotRequired[float]
|
|
90
|
+
r"""Percentage of the company workforce that is White."""
|
|
91
|
+
white_management_percentage: NotRequired[float]
|
|
92
|
+
r"""Percentage of company management that is White."""
|
|
93
|
+
workplace_health_safety: NotRequired[bool]
|
|
94
|
+
r"""Whether the company has a workplace health and safety policy."""
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
class HistoricalEsgResponseDataData(BaseModel):
|
|
98
|
+
r"""Detailed ESG disclosures and metrics for the period."""
|
|
99
|
+
|
|
100
|
+
adult_content: Annotated[Optional[bool], pydantic.Field(alias="adultContent")] = (
|
|
101
|
+
None
|
|
102
|
+
)
|
|
103
|
+
r"""Whether the company has involvement in adult content."""
|
|
104
|
+
|
|
105
|
+
alcoholic: Optional[bool] = None
|
|
106
|
+
r"""Whether the company has involvement in alcoholic beverages."""
|
|
107
|
+
|
|
108
|
+
animal_testing: Annotated[Optional[bool], pydantic.Field(alias="animalTesting")] = (
|
|
109
|
+
None
|
|
110
|
+
)
|
|
111
|
+
r"""Whether the company is involved in animal testing."""
|
|
112
|
+
|
|
113
|
+
antitrust: Optional[str] = None
|
|
114
|
+
r"""Antitrust-related disclosure for the company, as free text."""
|
|
115
|
+
|
|
116
|
+
asian_employee_percentage: Annotated[
|
|
117
|
+
Optional[float], pydantic.Field(alias="asianEmployeePercentage")
|
|
118
|
+
] = None
|
|
119
|
+
r"""Percentage of the company workforce that is Asian."""
|
|
120
|
+
|
|
121
|
+
asian_management_percentage: Annotated[
|
|
122
|
+
Optional[float], pydantic.Field(alias="asianManagementPercentage")
|
|
123
|
+
] = None
|
|
124
|
+
r"""Percentage of company management that is Asian."""
|
|
125
|
+
|
|
126
|
+
black_employee_percentage: Annotated[
|
|
127
|
+
Optional[float], pydantic.Field(alias="blackEmployeePercentage")
|
|
128
|
+
] = None
|
|
129
|
+
r"""Percentage of the company workforce that is Black."""
|
|
130
|
+
|
|
131
|
+
black_management_percentage: Annotated[
|
|
132
|
+
Optional[float], pydantic.Field(alias="blackManagementPercentage")
|
|
133
|
+
] = None
|
|
134
|
+
r"""Percentage of company management that is Black."""
|
|
135
|
+
|
|
136
|
+
carbon_reduction_policy: Annotated[
|
|
137
|
+
Optional[str], pydantic.Field(alias="carbonReductionPolicy")
|
|
138
|
+
] = None
|
|
139
|
+
r"""Description of the company carbon reduction policy."""
|
|
140
|
+
|
|
141
|
+
catholic: Optional[bool] = None
|
|
142
|
+
r"""Whether the company is flagged as conflicting with Catholic values screens."""
|
|
143
|
+
|
|
144
|
+
co2_emission_scope1: Annotated[
|
|
145
|
+
Optional[int], pydantic.Field(alias="co2EmissionScope1")
|
|
146
|
+
] = None
|
|
147
|
+
r"""Reported direct (Scope 1) CO2 emissions."""
|
|
148
|
+
|
|
149
|
+
co2_emission_scope2: Annotated[
|
|
150
|
+
Optional[int], pydantic.Field(alias="co2EmissionScope2")
|
|
151
|
+
] = None
|
|
152
|
+
r"""Reported indirect (Scope 2) CO2 emissions from purchased energy."""
|
|
153
|
+
|
|
154
|
+
co2_emission_scope3: Annotated[
|
|
155
|
+
Optional[int], pydantic.Field(alias="co2EmissionScope3")
|
|
156
|
+
] = None
|
|
157
|
+
r"""Reported other indirect (Scope 3) CO2 emissions."""
|
|
158
|
+
|
|
159
|
+
co2_emission_total: Annotated[
|
|
160
|
+
Optional[int], pydantic.Field(alias="co2EmissionTotal")
|
|
161
|
+
] = None
|
|
162
|
+
r"""Reported total CO2 emissions."""
|
|
163
|
+
|
|
164
|
+
coal_energy: Annotated[Optional[bool], pydantic.Field(alias="coalEnergy")] = None
|
|
165
|
+
r"""Whether the company has involvement in coal energy."""
|
|
166
|
+
|
|
167
|
+
ecofriendly_packaging: Annotated[
|
|
168
|
+
Optional[bool], pydantic.Field(alias="ecofriendlyPackaging")
|
|
169
|
+
] = None
|
|
170
|
+
r"""Whether the company uses eco-friendly packaging."""
|
|
171
|
+
|
|
172
|
+
environmental_reporting: Annotated[
|
|
173
|
+
Optional[bool], pydantic.Field(alias="environmentalReporting")
|
|
174
|
+
] = None
|
|
175
|
+
r"""Whether the company publishes environmental reporting."""
|
|
176
|
+
|
|
177
|
+
firearms: Optional[bool] = None
|
|
178
|
+
r"""Whether the company has involvement in firearms."""
|
|
179
|
+
|
|
180
|
+
fuel_efficiency_consumption: Annotated[
|
|
181
|
+
Optional[bool], pydantic.Field(alias="fuelEfficiencyConsumption")
|
|
182
|
+
] = None
|
|
183
|
+
r"""Whether the company reports fuel efficiency or consumption measures."""
|
|
184
|
+
|
|
185
|
+
gambling: Optional[bool] = None
|
|
186
|
+
r"""Whether the company has involvement in gambling."""
|
|
187
|
+
|
|
188
|
+
gmo: Optional[bool] = None
|
|
189
|
+
r"""Whether the company has involvement in genetically modified organisms."""
|
|
190
|
+
|
|
191
|
+
hazardous_substances: Annotated[
|
|
192
|
+
Optional[bool], pydantic.Field(alias="hazardousSubstances")
|
|
193
|
+
] = None
|
|
194
|
+
r"""Whether the company handles hazardous substances."""
|
|
195
|
+
|
|
196
|
+
hispanic_latino_employee_percentage: Annotated[
|
|
197
|
+
Optional[float], pydantic.Field(alias="hispanicLatinoEmployeePercentage")
|
|
198
|
+
] = None
|
|
199
|
+
r"""Percentage of the company workforce that is Hispanic or Latino."""
|
|
200
|
+
|
|
201
|
+
hispanic_latino_management_percentage: Annotated[
|
|
202
|
+
Optional[float], pydantic.Field(alias="hispanicLatinoManagementPercentage")
|
|
203
|
+
] = None
|
|
204
|
+
r"""Percentage of company management that is Hispanic or Latino."""
|
|
205
|
+
|
|
206
|
+
human_rights_policy: Annotated[
|
|
207
|
+
Optional[bool], pydantic.Field(alias="humanRightsPolicy")
|
|
208
|
+
] = None
|
|
209
|
+
r"""Whether the company has a human rights policy."""
|
|
210
|
+
|
|
211
|
+
military_contract: Annotated[
|
|
212
|
+
Optional[bool], pydantic.Field(alias="militaryContract")
|
|
213
|
+
] = None
|
|
214
|
+
r"""Whether the company holds military contracts."""
|
|
215
|
+
|
|
216
|
+
nuclear: Optional[bool] = None
|
|
217
|
+
r"""Whether the company has involvement in nuclear energy."""
|
|
218
|
+
|
|
219
|
+
pesticides: OptionalNullable[str] = UNSET
|
|
220
|
+
r"""Pesticide-related disclosure for the company, or null when not available."""
|
|
221
|
+
|
|
222
|
+
recall_policy_safety: Annotated[
|
|
223
|
+
Optional[bool], pydantic.Field(alias="recallPolicySafety")
|
|
224
|
+
] = None
|
|
225
|
+
r"""Whether the company has a product recall and safety policy."""
|
|
226
|
+
|
|
227
|
+
recycling_policy: Annotated[
|
|
228
|
+
Optional[bool], pydantic.Field(alias="recyclingPolicy")
|
|
229
|
+
] = None
|
|
230
|
+
r"""Whether the company has a recycling policy."""
|
|
231
|
+
|
|
232
|
+
stakeholder_engagement: Annotated[
|
|
233
|
+
Optional[bool], pydantic.Field(alias="stakeholderEngagement")
|
|
234
|
+
] = None
|
|
235
|
+
r"""Whether the company reports stakeholder engagement."""
|
|
236
|
+
|
|
237
|
+
tobacco: Optional[bool] = None
|
|
238
|
+
r"""Whether the company has involvement in tobacco."""
|
|
239
|
+
|
|
240
|
+
total_women_percentage: Annotated[
|
|
241
|
+
Optional[int], pydantic.Field(alias="totalWomenPercentage")
|
|
242
|
+
] = None
|
|
243
|
+
r"""Percentage of the company workforce that is women."""
|
|
244
|
+
|
|
245
|
+
water_efficiency_consumption: Annotated[
|
|
246
|
+
Optional[bool], pydantic.Field(alias="waterEfficiencyConsumption")
|
|
247
|
+
] = None
|
|
248
|
+
r"""Whether the company reports water efficiency or consumption measures."""
|
|
249
|
+
|
|
250
|
+
white_employee_percentage: Annotated[
|
|
251
|
+
Optional[float], pydantic.Field(alias="whiteEmployeePercentage")
|
|
252
|
+
] = None
|
|
253
|
+
r"""Percentage of the company workforce that is White."""
|
|
254
|
+
|
|
255
|
+
white_management_percentage: Annotated[
|
|
256
|
+
Optional[float], pydantic.Field(alias="whiteManagementPercentage")
|
|
257
|
+
] = None
|
|
258
|
+
r"""Percentage of company management that is White."""
|
|
259
|
+
|
|
260
|
+
workplace_health_safety: Annotated[
|
|
261
|
+
Optional[bool], pydantic.Field(alias="workplaceHealthSafety")
|
|
262
|
+
] = None
|
|
263
|
+
r"""Whether the company has a workplace health and safety policy."""
|
|
264
|
+
|
|
265
|
+
@model_serializer(mode="wrap")
|
|
266
|
+
def serialize_model(self, handler):
|
|
267
|
+
optional_fields = set(
|
|
268
|
+
[
|
|
269
|
+
"adultContent",
|
|
270
|
+
"alcoholic",
|
|
271
|
+
"animalTesting",
|
|
272
|
+
"antitrust",
|
|
273
|
+
"asianEmployeePercentage",
|
|
274
|
+
"asianManagementPercentage",
|
|
275
|
+
"blackEmployeePercentage",
|
|
276
|
+
"blackManagementPercentage",
|
|
277
|
+
"carbonReductionPolicy",
|
|
278
|
+
"catholic",
|
|
279
|
+
"co2EmissionScope1",
|
|
280
|
+
"co2EmissionScope2",
|
|
281
|
+
"co2EmissionScope3",
|
|
282
|
+
"co2EmissionTotal",
|
|
283
|
+
"coalEnergy",
|
|
284
|
+
"ecofriendlyPackaging",
|
|
285
|
+
"environmentalReporting",
|
|
286
|
+
"firearms",
|
|
287
|
+
"fuelEfficiencyConsumption",
|
|
288
|
+
"gambling",
|
|
289
|
+
"gmo",
|
|
290
|
+
"hazardousSubstances",
|
|
291
|
+
"hispanicLatinoEmployeePercentage",
|
|
292
|
+
"hispanicLatinoManagementPercentage",
|
|
293
|
+
"humanRightsPolicy",
|
|
294
|
+
"militaryContract",
|
|
295
|
+
"nuclear",
|
|
296
|
+
"pesticides",
|
|
297
|
+
"recallPolicySafety",
|
|
298
|
+
"recyclingPolicy",
|
|
299
|
+
"stakeholderEngagement",
|
|
300
|
+
"tobacco",
|
|
301
|
+
"totalWomenPercentage",
|
|
302
|
+
"waterEfficiencyConsumption",
|
|
303
|
+
"whiteEmployeePercentage",
|
|
304
|
+
"whiteManagementPercentage",
|
|
305
|
+
"workplaceHealthSafety",
|
|
306
|
+
]
|
|
307
|
+
)
|
|
308
|
+
nullable_fields = set(["pesticides"])
|
|
309
|
+
serialized = handler(self)
|
|
310
|
+
m = {}
|
|
311
|
+
|
|
312
|
+
for n, f in type(self).model_fields.items():
|
|
313
|
+
k = f.alias or n
|
|
314
|
+
val = serialized.get(k, serialized.get(n))
|
|
315
|
+
is_nullable_and_explicitly_set = (
|
|
316
|
+
k in nullable_fields
|
|
317
|
+
and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
|
|
318
|
+
)
|
|
319
|
+
|
|
320
|
+
if val != UNSET_SENTINEL:
|
|
321
|
+
if (
|
|
322
|
+
val is not None
|
|
323
|
+
or k not in optional_fields
|
|
324
|
+
or is_nullable_and_explicitly_set
|
|
325
|
+
):
|
|
326
|
+
m[k] = val
|
|
327
|
+
|
|
328
|
+
return m
|
|
329
|
+
|
|
330
|
+
|
|
331
|
+
class HistoricalEsgResponseDataTypedDict(TypedDict):
|
|
332
|
+
data: NotRequired[HistoricalEsgResponseDataDataTypedDict]
|
|
333
|
+
r"""Detailed ESG disclosures and metrics for the period."""
|
|
334
|
+
environment_score: NotRequired[float]
|
|
335
|
+
r"""Environmental score for the period."""
|
|
336
|
+
governance_score: NotRequired[float]
|
|
337
|
+
r"""Governance score for the period."""
|
|
338
|
+
period: NotRequired[str]
|
|
339
|
+
r"""Reporting period of the record."""
|
|
340
|
+
social_score: NotRequired[float]
|
|
341
|
+
r"""Social score for the period."""
|
|
342
|
+
total_esg_score: NotRequired[float]
|
|
343
|
+
r"""Total ESG score for the period."""
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+
class HistoricalEsgResponseData(BaseModel):
|
|
347
|
+
data: Optional[HistoricalEsgResponseDataData] = None
|
|
348
|
+
r"""Detailed ESG disclosures and metrics for the period."""
|
|
349
|
+
|
|
350
|
+
environment_score: Annotated[
|
|
351
|
+
Optional[float], pydantic.Field(alias="environmentScore")
|
|
352
|
+
] = None
|
|
353
|
+
r"""Environmental score for the period."""
|
|
354
|
+
|
|
355
|
+
governance_score: Annotated[
|
|
356
|
+
Optional[float], pydantic.Field(alias="governanceScore")
|
|
357
|
+
] = None
|
|
358
|
+
r"""Governance score for the period."""
|
|
359
|
+
|
|
360
|
+
period: Optional[str] = None
|
|
361
|
+
r"""Reporting period of the record."""
|
|
362
|
+
|
|
363
|
+
social_score: Annotated[Optional[float], pydantic.Field(alias="socialScore")] = None
|
|
364
|
+
r"""Social score for the period."""
|
|
365
|
+
|
|
366
|
+
total_esg_score: Annotated[
|
|
367
|
+
Optional[float], pydantic.Field(alias="totalESGScore")
|
|
368
|
+
] = None
|
|
369
|
+
r"""Total ESG score for the period."""
|
|
370
|
+
|
|
371
|
+
@model_serializer(mode="wrap")
|
|
372
|
+
def serialize_model(self, handler):
|
|
373
|
+
optional_fields = set(
|
|
374
|
+
[
|
|
375
|
+
"data",
|
|
376
|
+
"environmentScore",
|
|
377
|
+
"governanceScore",
|
|
378
|
+
"period",
|
|
379
|
+
"socialScore",
|
|
380
|
+
"totalESGScore",
|
|
381
|
+
]
|
|
382
|
+
)
|
|
383
|
+
serialized = handler(self)
|
|
384
|
+
m = {}
|
|
385
|
+
|
|
386
|
+
for n, f in type(self).model_fields.items():
|
|
387
|
+
k = f.alias or n
|
|
388
|
+
val = serialized.get(k, serialized.get(n))
|
|
389
|
+
|
|
390
|
+
if val != UNSET_SENTINEL:
|
|
391
|
+
if val is not None or k not in optional_fields:
|
|
392
|
+
m[k] = val
|
|
393
|
+
|
|
394
|
+
return m
|
|
395
|
+
|
|
396
|
+
|
|
397
|
+
class HistoricalEsgResponseTypedDict(TypedDict):
|
|
398
|
+
r"""Historical ESG (environmental, social, governance) scores and disclosures for a company by period."""
|
|
399
|
+
|
|
400
|
+
data: NotRequired[List[HistoricalEsgResponseDataTypedDict]]
|
|
401
|
+
r"""ESG records by period."""
|
|
402
|
+
symbol: NotRequired[str]
|
|
403
|
+
r"""Ticker symbol of the company."""
|
|
404
|
+
|
|
405
|
+
|
|
406
|
+
class HistoricalEsgResponse(BaseModel):
|
|
407
|
+
r"""Historical ESG (environmental, social, governance) scores and disclosures for a company by period."""
|
|
408
|
+
|
|
409
|
+
data: Optional[List[HistoricalEsgResponseData]] = None
|
|
410
|
+
r"""ESG records by period."""
|
|
411
|
+
|
|
412
|
+
symbol: Optional[str] = None
|
|
413
|
+
r"""Ticker symbol of the company."""
|
|
414
|
+
|
|
415
|
+
@model_serializer(mode="wrap")
|
|
416
|
+
def serialize_model(self, handler):
|
|
417
|
+
optional_fields = set(["data", "symbol"])
|
|
418
|
+
serialized = handler(self)
|
|
419
|
+
m = {}
|
|
420
|
+
|
|
421
|
+
for n, f in type(self).model_fields.items():
|
|
422
|
+
k = f.alias or n
|
|
423
|
+
val = serialized.get(k, serialized.get(n))
|
|
424
|
+
|
|
425
|
+
if val != UNSET_SENTINEL:
|
|
426
|
+
if val is not None or k not in optional_fields:
|
|
427
|
+
m[k] = val
|
|
428
|
+
|
|
429
|
+
return m
|
|
430
|
+
|
|
431
|
+
|
|
432
|
+
try:
|
|
433
|
+
HistoricalEsgResponseDataData.model_rebuild()
|
|
434
|
+
except NameError:
|
|
435
|
+
pass
|
|
436
|
+
try:
|
|
437
|
+
HistoricalEsgResponseData.model_rebuild()
|
|
438
|
+
except NameError:
|
|
439
|
+
pass
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
# @generated-id: fa8258d23c74
|
|
3
|
+
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
from finance_dev.types import BaseModel
|
|
6
|
+
import httpx
|
|
7
|
+
import pydantic
|
|
8
|
+
from typing import Optional
|
|
9
|
+
from typing_extensions import Annotated, TypedDict
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class HTTPMetadataTypedDict(TypedDict):
|
|
13
|
+
response: httpx.Response
|
|
14
|
+
r"""Raw HTTP response; suitable for custom response parsing"""
|
|
15
|
+
request: httpx.Request
|
|
16
|
+
r"""Raw HTTP request; suitable for debugging"""
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class HTTPMetadata(BaseModel):
|
|
20
|
+
response: Annotated[Optional[httpx.Response], pydantic.Field(exclude=True)] = None
|
|
21
|
+
r"""Raw HTTP response; suitable for custom response parsing"""
|
|
22
|
+
|
|
23
|
+
request: Annotated[Optional[httpx.Request], pydantic.Field(exclude=True)] = None
|
|
24
|
+
r"""Raw HTTP request; suitable for debugging"""
|