From 73d3cf860fb2f9c5749271e827ff3e2bc182f947 Mon Sep 17 00:00:00 2001 From: justinpolygon <123573436+justinpolygon@users.noreply.github.com> Date: Mon, 27 Apr 2026 07:40:46 -0700 Subject: [PATCH] Sync client-go with OpenAPI spec --- rest/gen/client.gen.go | 3552 ++++++++++++++++++++++++++++++------- rest/scripts/openapi.json | 2029 ++++++++++++++++++--- 2 files changed, 4716 insertions(+), 865 deletions(-) diff --git a/rest/gen/client.gen.go b/rest/gen/client.gen.go index 11e48e6f..492047f4 100644 --- a/rest/gen/client.gen.go +++ b/rest/gen/client.gen.go @@ -3613,6 +3613,51 @@ type GetFuturesV1SchedulesParams struct { Sort *string `form:"sort,omitempty" json:"sort,omitempty"` } +// GetFuturesV1SnapshotParams defines parameters for GetFuturesV1Snapshot. +type GetFuturesV1SnapshotParams struct { + // ProductCode The code for the contracts' underlying product. + ProductCode *string `form:"product_code,omitempty" json:"product_code,omitempty"` + + // ProductCodeAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + ProductCodeAnyOf *string `form:"product_code.any_of,omitempty" json:"product_code.any_of,omitempty"` + + // ProductCodeGt Filter greater than the value. + ProductCodeGt *string `form:"product_code.gt,omitempty" json:"product_code.gt,omitempty"` + + // ProductCodeGte Filter greater than or equal to the value. + ProductCodeGte *string `form:"product_code.gte,omitempty" json:"product_code.gte,omitempty"` + + // ProductCodeLt Filter less than the value. + ProductCodeLt *string `form:"product_code.lt,omitempty" json:"product_code.lt,omitempty"` + + // ProductCodeLte Filter less than or equal to the value. + ProductCodeLte *string `form:"product_code.lte,omitempty" json:"product_code.lte,omitempty"` + + // Ticker The futures contract identifier, including the base symbol and contract expiration (e.g., ESZ24 for the December 2024 S&P 500 E-mini contract). + Ticker *string `form:"ticker,omitempty" json:"ticker,omitempty"` + + // TickerAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + TickerAnyOf *string `form:"ticker.any_of,omitempty" json:"ticker.any_of,omitempty"` + + // TickerGt Filter greater than the value. + TickerGt *string `form:"ticker.gt,omitempty" json:"ticker.gt,omitempty"` + + // TickerGte Filter greater than or equal to the value. + TickerGte *string `form:"ticker.gte,omitempty" json:"ticker.gte,omitempty"` + + // TickerLt Filter less than the value. + TickerLt *string `form:"ticker.lt,omitempty" json:"ticker.lt,omitempty"` + + // TickerLte Filter less than or equal to the value. + TickerLte *string `form:"ticker.lte,omitempty" json:"ticker.lte,omitempty"` + + // Limit Limit the maximum number of results returned. Defaults to '100' if not specified. The maximum allowed limit is '50000'. + Limit *int `form:"limit,omitempty" json:"limit,omitempty"` + + // Sort A comma separated list of sort columns. For each column, append '.asc' or '.desc' to specify the sort direction. The sort column defaults to 'ticker' if not specified. The sort order defaults to 'asc' if not specified. + Sort *string `form:"sort,omitempty" json:"sort,omitempty"` +} + // GetFuturesV1TradesParams defines parameters for GetFuturesV1Trades. type GetFuturesV1TradesParams struct { // Timestamp The time when the trade was generated at the exchange to nanosecond precision. Value must be an integer timestamp in nanoseconds, formatted 'yyyy-mm-dd', or ISO 8601/RFC 3339 (e.g. '2024-05-28T20:27:41Z'). @@ -4297,24 +4342,6 @@ type GetStocksFilingsVX13FParams struct { // FilerCikAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. FilerCikAnyOf *string `form:"filer_cik.any_of,omitempty" json:"filer_cik.any_of,omitempty"` - // AccessionNumber Unique SEC accession number for the filing (e.g., '0000950123-24-011775'). - AccessionNumber *string `form:"accession_number,omitempty" json:"accession_number,omitempty"` - - // AccessionNumberAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. - AccessionNumberAnyOf *string `form:"accession_number.any_of,omitempty" json:"accession_number.any_of,omitempty"` - - // AccessionNumberGt Filter greater than the value. - AccessionNumberGt *string `form:"accession_number.gt,omitempty" json:"accession_number.gt,omitempty"` - - // AccessionNumberGte Filter greater than or equal to the value. - AccessionNumberGte *string `form:"accession_number.gte,omitempty" json:"accession_number.gte,omitempty"` - - // AccessionNumberLt Filter less than the value. - AccessionNumberLt *string `form:"accession_number.lt,omitempty" json:"accession_number.lt,omitempty"` - - // AccessionNumberLte Filter less than or equal to the value. - AccessionNumberLte *string `form:"accession_number.lte,omitempty" json:"accession_number.lte,omitempty"` - // FilingDate Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD). Value must be formatted 'yyyy-mm-dd'. FilingDate *string `form:"filing_date,omitempty" json:"filing_date,omitempty"` @@ -4337,62 +4364,32 @@ type GetStocksFilingsVX13FParams struct { Sort *string `form:"sort,omitempty" json:"sort,omitempty"` } -// GetStocksFilingsVXIndexParams defines parameters for GetStocksFilingsVXIndex. -type GetStocksFilingsVXIndexParams struct { - // Cik SEC Central Index Key (CIK) identifying the filing entity. - Cik *string `form:"cik,omitempty" json:"cik,omitempty"` - - // CikAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. - CikAnyOf *string `form:"cik.any_of,omitempty" json:"cik.any_of,omitempty"` - - // CikGt Filter greater than the value. - CikGt *string `form:"cik.gt,omitempty" json:"cik.gt,omitempty"` +// GetStocksFilingsVXForm3Params defines parameters for GetStocksFilingsVXForm3. +type GetStocksFilingsVXForm3Params struct { + // IssuerCik SEC Central Index Key of the issuer company (10 digits, zero-padded). + IssuerCik *string `form:"issuer_cik,omitempty" json:"issuer_cik,omitempty"` - // CikGte Filter greater than or equal to the value. - CikGte *string `form:"cik.gte,omitempty" json:"cik.gte,omitempty"` + // IssuerCikAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + IssuerCikAnyOf *string `form:"issuer_cik.any_of,omitempty" json:"issuer_cik.any_of,omitempty"` - // CikLt Filter less than the value. - CikLt *string `form:"cik.lt,omitempty" json:"cik.lt,omitempty"` + // OwnerCik SEC Central Index Key of the reporting owner (10 digits, zero-padded). + OwnerCik *string `form:"owner_cik,omitempty" json:"owner_cik,omitempty"` - // CikLte Filter less than or equal to the value. - CikLte *string `form:"cik.lte,omitempty" json:"cik.lte,omitempty"` + // OwnerCikAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + OwnerCikAnyOf *string `form:"owner_cik.any_of,omitempty" json:"owner_cik.any_of,omitempty"` - // Ticker Stock ticker symbol for the filing entity, if available. - Ticker *string `form:"ticker,omitempty" json:"ticker,omitempty"` - - // TickerAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. - TickerAnyOf *string `form:"ticker.any_of,omitempty" json:"ticker.any_of,omitempty"` - - // TickerGt Filter greater than the value. - TickerGt *string `form:"ticker.gt,omitempty" json:"ticker.gt,omitempty"` - - // TickerGte Filter greater than or equal to the value. - TickerGte *string `form:"ticker.gte,omitempty" json:"ticker.gte,omitempty"` + // Tickers Filter for arrays that contain the value. + Tickers *string `form:"tickers,omitempty" json:"tickers,omitempty"` - // TickerLt Filter less than the value. - TickerLt *string `form:"ticker.lt,omitempty" json:"ticker.lt,omitempty"` + // TickersAllOf Filter for arrays that contain all of the values. Multiple values can be specified by using a comma separated list. + TickersAllOf *string `form:"tickers.all_of,omitempty" json:"tickers.all_of,omitempty"` - // TickerLte Filter less than or equal to the value. - TickerLte *string `form:"ticker.lte,omitempty" json:"ticker.lte,omitempty"` + // TickersAnyOf Filter for arrays that contain any of the values. Multiple values can be specified by using a comma separated list. + TickersAnyOf *string `form:"tickers.any_of,omitempty" json:"tickers.any_of,omitempty"` - // FormType SEC form type (e.g., '10-K', '10-Q', '8-K', 'S-1', '4', etc.). + // FormType SEC form type ('3' for initial filing, '3/A' for amendments). FormType *string `form:"form_type,omitempty" json:"form_type,omitempty"` - // FormTypeAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. - FormTypeAnyOf *string `form:"form_type.any_of,omitempty" json:"form_type.any_of,omitempty"` - - // FormTypeGt Filter greater than the value. - FormTypeGt *string `form:"form_type.gt,omitempty" json:"form_type.gt,omitempty"` - - // FormTypeGte Filter greater than or equal to the value. - FormTypeGte *string `form:"form_type.gte,omitempty" json:"form_type.gte,omitempty"` - - // FormTypeLt Filter less than the value. - FormTypeLt *string `form:"form_type.lt,omitempty" json:"form_type.lt,omitempty"` - - // FormTypeLte Filter less than or equal to the value. - FormTypeLte *string `form:"form_type.lte,omitempty" json:"form_type.lte,omitempty"` - // FilingDate Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD). Value must be formatted 'yyyy-mm-dd'. FilingDate *string `form:"filing_date,omitempty" json:"filing_date,omitempty"` @@ -4408,95 +4405,62 @@ type GetStocksFilingsVXIndexParams struct { // FilingDateLte Filter less than or equal to the value. Value must be formatted 'yyyy-mm-dd'. FilingDateLte *string `form:"filing_date.lte,omitempty" json:"filing_date.lte,omitempty"` - // Limit Limit the maximum number of results returned. Defaults to '1000' if not specified. The maximum allowed limit is '50000'. - Limit *int `form:"limit,omitempty" json:"limit,omitempty"` - - // Sort A comma separated list of sort columns. For each column, append '.asc' or '.desc' to specify the sort direction. The sort column defaults to 'filing_date' if not specified. The sort order defaults to 'desc' if not specified. - Sort *string `form:"sort,omitempty" json:"sort,omitempty"` -} - -// GetStocksFilingsVXRiskFactorsParams defines parameters for GetStocksFilingsVXRiskFactors. -type GetStocksFilingsVXRiskFactorsParams struct { - // FilingDate Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD). - FilingDate *string `form:"filing_date,omitempty" json:"filing_date,omitempty"` - - // FilingDateAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. - FilingDateAnyOf *string `form:"filing_date.any_of,omitempty" json:"filing_date.any_of,omitempty"` - - // FilingDateGt Filter greater than the value. - FilingDateGt *string `form:"filing_date.gt,omitempty" json:"filing_date.gt,omitempty"` - - // FilingDateGte Filter greater than or equal to the value. - FilingDateGte *string `form:"filing_date.gte,omitempty" json:"filing_date.gte,omitempty"` - - // FilingDateLt Filter less than the value. - FilingDateLt *string `form:"filing_date.lt,omitempty" json:"filing_date.lt,omitempty"` - - // FilingDateLte Filter less than or equal to the value. - FilingDateLte *string `form:"filing_date.lte,omitempty" json:"filing_date.lte,omitempty"` - - // Ticker Stock ticker symbol for the company. - Ticker *string `form:"ticker,omitempty" json:"ticker,omitempty"` + // MaxTicker Filter equal to the value. + MaxTicker *string `form:"max_ticker,omitempty" json:"max_ticker,omitempty"` - // TickerAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. - TickerAnyOf *string `form:"ticker.any_of,omitempty" json:"ticker.any_of,omitempty"` + // MaxTickerAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + MaxTickerAnyOf *string `form:"max_ticker.any_of,omitempty" json:"max_ticker.any_of,omitempty"` - // TickerGt Filter greater than the value. - TickerGt *string `form:"ticker.gt,omitempty" json:"ticker.gt,omitempty"` + // MaxTickerGt Filter greater than the value. + MaxTickerGt *string `form:"max_ticker.gt,omitempty" json:"max_ticker.gt,omitempty"` - // TickerGte Filter greater than or equal to the value. - TickerGte *string `form:"ticker.gte,omitempty" json:"ticker.gte,omitempty"` + // MaxTickerGte Filter greater than or equal to the value. + MaxTickerGte *string `form:"max_ticker.gte,omitempty" json:"max_ticker.gte,omitempty"` - // TickerLt Filter less than the value. - TickerLt *string `form:"ticker.lt,omitempty" json:"ticker.lt,omitempty"` + // MaxTickerLt Filter less than the value. + MaxTickerLt *string `form:"max_ticker.lt,omitempty" json:"max_ticker.lt,omitempty"` - // TickerLte Filter less than or equal to the value. - TickerLte *string `form:"ticker.lte,omitempty" json:"ticker.lte,omitempty"` + // MaxTickerLte Filter less than or equal to the value. + MaxTickerLte *string `form:"max_ticker.lte,omitempty" json:"max_ticker.lte,omitempty"` - // Cik SEC Central Index Key (10 digits, zero-padded). - Cik *string `form:"cik,omitempty" json:"cik,omitempty"` + // MinTicker Filter equal to the value. + MinTicker *string `form:"min_ticker,omitempty" json:"min_ticker,omitempty"` - // CikAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. - CikAnyOf *string `form:"cik.any_of,omitempty" json:"cik.any_of,omitempty"` + // MinTickerAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + MinTickerAnyOf *string `form:"min_ticker.any_of,omitempty" json:"min_ticker.any_of,omitempty"` - // CikGt Filter greater than the value. - CikGt *string `form:"cik.gt,omitempty" json:"cik.gt,omitempty"` + // MinTickerGt Filter greater than the value. + MinTickerGt *string `form:"min_ticker.gt,omitempty" json:"min_ticker.gt,omitempty"` - // CikGte Filter greater than or equal to the value. - CikGte *string `form:"cik.gte,omitempty" json:"cik.gte,omitempty"` + // MinTickerGte Filter greater than or equal to the value. + MinTickerGte *string `form:"min_ticker.gte,omitempty" json:"min_ticker.gte,omitempty"` - // CikLt Filter less than the value. - CikLt *string `form:"cik.lt,omitempty" json:"cik.lt,omitempty"` + // MinTickerLt Filter less than the value. + MinTickerLt *string `form:"min_ticker.lt,omitempty" json:"min_ticker.lt,omitempty"` - // CikLte Filter less than or equal to the value. - CikLte *string `form:"cik.lte,omitempty" json:"cik.lte,omitempty"` + // MinTickerLte Filter less than or equal to the value. + MinTickerLte *string `form:"min_ticker.lte,omitempty" json:"min_ticker.lte,omitempty"` - // Limit Limit the maximum number of results returned. Defaults to '100' if not specified. The maximum allowed limit is '49999'. + // Limit Limit the maximum number of results returned. Defaults to '100' if not specified. The maximum allowed limit is '10000'. Limit *int `form:"limit,omitempty" json:"limit,omitempty"` // Sort A comma separated list of sort columns. For each column, append '.asc' or '.desc' to specify the sort direction. The sort column defaults to 'filing_date' if not specified. The sort order defaults to 'desc' if not specified. Sort *string `form:"sort,omitempty" json:"sort,omitempty"` } -// GetStocksFinancialsV1BalanceSheetsParams defines parameters for GetStocksFinancialsV1BalanceSheets. -type GetStocksFinancialsV1BalanceSheetsParams struct { - // Cik The company's Central Index Key (CIK), a unique identifier assigned by the U.AskSize. Securities and Exchange Commission (SEC). You can look up a company's CIK using the [SEC CIK Lookup tool](https://www.sec.gov/search-filings/cik-lookup). - Cik *string `form:"cik,omitempty" json:"cik,omitempty"` - - // CikAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. - CikAnyOf *string `form:"cik.any_of,omitempty" json:"cik.any_of,omitempty"` - - // CikGt Filter greater than the value. - CikGt *string `form:"cik.gt,omitempty" json:"cik.gt,omitempty"` +// GetStocksFilingsVXForm4Params defines parameters for GetStocksFilingsVXForm4. +type GetStocksFilingsVXForm4Params struct { + // IssuerCik SEC Central Index Key of the issuer company (10 digits, zero-padded). + IssuerCik *string `form:"issuer_cik,omitempty" json:"issuer_cik,omitempty"` - // CikGte Filter greater than or equal to the value. - CikGte *string `form:"cik.gte,omitempty" json:"cik.gte,omitempty"` + // IssuerCikAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + IssuerCikAnyOf *string `form:"issuer_cik.any_of,omitempty" json:"issuer_cik.any_of,omitempty"` - // CikLt Filter less than the value. - CikLt *string `form:"cik.lt,omitempty" json:"cik.lt,omitempty"` + // OwnerCik SEC Central Index Key of the reporting owner (10 digits, zero-padded). + OwnerCik *string `form:"owner_cik,omitempty" json:"owner_cik,omitempty"` - // CikLte Filter less than or equal to the value. - CikLte *string `form:"cik.lte,omitempty" json:"cik.lte,omitempty"` + // OwnerCikAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + OwnerCikAnyOf *string `form:"owner_cik.any_of,omitempty" json:"owner_cik.any_of,omitempty"` // Tickers Filter for arrays that contain the value. Tickers *string `form:"tickers,omitempty" json:"tickers,omitempty"` @@ -4507,22 +4471,10 @@ type GetStocksFinancialsV1BalanceSheetsParams struct { // TickersAnyOf Filter for arrays that contain any of the values. Multiple values can be specified by using a comma separated list. TickersAnyOf *string `form:"tickers.any_of,omitempty" json:"tickers.any_of,omitempty"` - // PeriodEnd The last date of the reporting period, representing the specific point in time when the balance sheet snapshot was taken. Value must be formatted 'yyyy-mm-dd'. - PeriodEnd *string `form:"period_end,omitempty" json:"period_end,omitempty"` - - // PeriodEndGt Filter greater than the value. Value must be formatted 'yyyy-mm-dd'. - PeriodEndGt *string `form:"period_end.gt,omitempty" json:"period_end.gt,omitempty"` - - // PeriodEndGte Filter greater than or equal to the value. Value must be formatted 'yyyy-mm-dd'. - PeriodEndGte *string `form:"period_end.gte,omitempty" json:"period_end.gte,omitempty"` - - // PeriodEndLt Filter less than the value. Value must be formatted 'yyyy-mm-dd'. - PeriodEndLt *string `form:"period_end.lt,omitempty" json:"period_end.lt,omitempty"` - - // PeriodEndLte Filter less than or equal to the value. Value must be formatted 'yyyy-mm-dd'. - PeriodEndLte *string `form:"period_end.lte,omitempty" json:"period_end.lte,omitempty"` + // FormType SEC form type ('4' for standard filing, '4/A' for amendments). + FormType *string `form:"form_type,omitempty" json:"form_type,omitempty"` - // FilingDate The date when the financial statement was filed with the SEC. Value must be formatted 'yyyy-mm-dd'. + // FilingDate Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD). Value must be formatted 'yyyy-mm-dd'. FilingDate *string `form:"filing_date,omitempty" json:"filing_date,omitempty"` // FilingDateGt Filter greater than the value. Value must be formatted 'yyyy-mm-dd'. @@ -4537,53 +4489,299 @@ type GetStocksFinancialsV1BalanceSheetsParams struct { // FilingDateLte Filter less than or equal to the value. Value must be formatted 'yyyy-mm-dd'. FilingDateLte *string `form:"filing_date.lte,omitempty" json:"filing_date.lte,omitempty"` - // FiscalYear The fiscal year for the reporting period. Value must be a floating point number. - FiscalYear *float64 `form:"fiscal_year,omitempty" json:"fiscal_year,omitempty"` - - // FiscalYearGt Filter greater than the value. Value must be a floating point number. - FiscalYearGt *float64 `form:"fiscal_year.gt,omitempty" json:"fiscal_year.gt,omitempty"` - - // FiscalYearGte Filter greater than or equal to the value. Value must be a floating point number. - FiscalYearGte *float64 `form:"fiscal_year.gte,omitempty" json:"fiscal_year.gte,omitempty"` - - // FiscalYearLt Filter less than the value. Value must be a floating point number. - FiscalYearLt *float64 `form:"fiscal_year.lt,omitempty" json:"fiscal_year.lt,omitempty"` - - // FiscalYearLte Filter less than or equal to the value. Value must be a floating point number. - FiscalYearLte *float64 `form:"fiscal_year.lte,omitempty" json:"fiscal_year.lte,omitempty"` - - // FiscalQuarter The fiscal quarter number (1, 2, 3, or 4) for the reporting period. Value must be a floating point number. - FiscalQuarter *float64 `form:"fiscal_quarter,omitempty" json:"fiscal_quarter,omitempty"` - - // FiscalQuarterGt Filter greater than the value. Value must be a floating point number. - FiscalQuarterGt *float64 `form:"fiscal_quarter.gt,omitempty" json:"fiscal_quarter.gt,omitempty"` - - // FiscalQuarterGte Filter greater than or equal to the value. Value must be a floating point number. - FiscalQuarterGte *float64 `form:"fiscal_quarter.gte,omitempty" json:"fiscal_quarter.gte,omitempty"` - - // FiscalQuarterLt Filter less than the value. Value must be a floating point number. - FiscalQuarterLt *float64 `form:"fiscal_quarter.lt,omitempty" json:"fiscal_quarter.lt,omitempty"` - - // FiscalQuarterLte Filter less than or equal to the value. Value must be a floating point number. - FiscalQuarterLte *float64 `form:"fiscal_quarter.lte,omitempty" json:"fiscal_quarter.lte,omitempty"` - - // Timeframe The reporting period type. Possible values include: quarterly, annual. - Timeframe *string `form:"timeframe,omitempty" json:"timeframe,omitempty"` - - // TimeframeAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. - TimeframeAnyOf *string `form:"timeframe.any_of,omitempty" json:"timeframe.any_of,omitempty"` - - // TimeframeGt Filter greater than the value. - TimeframeGt *string `form:"timeframe.gt,omitempty" json:"timeframe.gt,omitempty"` - - // TimeframeGte Filter greater than or equal to the value. - TimeframeGte *string `form:"timeframe.gte,omitempty" json:"timeframe.gte,omitempty"` - - // TimeframeLt Filter less than the value. - TimeframeLt *string `form:"timeframe.lt,omitempty" json:"timeframe.lt,omitempty"` - - // TimeframeLte Filter less than or equal to the value. - TimeframeLte *string `form:"timeframe.lte,omitempty" json:"timeframe.lte,omitempty"` + // TransactionCode SEC transaction code indicating the type of transaction (e.g., 'P' for purchase, 'S' for sale, 'A' for grant/award, 'M' for exercise/conversion). + TransactionCode *string `form:"transaction_code,omitempty" json:"transaction_code,omitempty"` + + // MaxTicker Filter equal to the value. + MaxTicker *string `form:"max_ticker,omitempty" json:"max_ticker,omitempty"` + + // MaxTickerAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + MaxTickerAnyOf *string `form:"max_ticker.any_of,omitempty" json:"max_ticker.any_of,omitempty"` + + // MaxTickerGt Filter greater than the value. + MaxTickerGt *string `form:"max_ticker.gt,omitempty" json:"max_ticker.gt,omitempty"` + + // MaxTickerGte Filter greater than or equal to the value. + MaxTickerGte *string `form:"max_ticker.gte,omitempty" json:"max_ticker.gte,omitempty"` + + // MaxTickerLt Filter less than the value. + MaxTickerLt *string `form:"max_ticker.lt,omitempty" json:"max_ticker.lt,omitempty"` + + // MaxTickerLte Filter less than or equal to the value. + MaxTickerLte *string `form:"max_ticker.lte,omitempty" json:"max_ticker.lte,omitempty"` + + // MinTicker Filter equal to the value. + MinTicker *string `form:"min_ticker,omitempty" json:"min_ticker,omitempty"` + + // MinTickerAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + MinTickerAnyOf *string `form:"min_ticker.any_of,omitempty" json:"min_ticker.any_of,omitempty"` + + // MinTickerGt Filter greater than the value. + MinTickerGt *string `form:"min_ticker.gt,omitempty" json:"min_ticker.gt,omitempty"` + + // MinTickerGte Filter greater than or equal to the value. + MinTickerGte *string `form:"min_ticker.gte,omitempty" json:"min_ticker.gte,omitempty"` + + // MinTickerLt Filter less than the value. + MinTickerLt *string `form:"min_ticker.lt,omitempty" json:"min_ticker.lt,omitempty"` + + // MinTickerLte Filter less than or equal to the value. + MinTickerLte *string `form:"min_ticker.lte,omitempty" json:"min_ticker.lte,omitempty"` + + // Limit Limit the maximum number of results returned. Defaults to '100' if not specified. The maximum allowed limit is '10000'. + Limit *int `form:"limit,omitempty" json:"limit,omitempty"` + + // Sort A comma separated list of sort columns. For each column, append '.asc' or '.desc' to specify the sort direction. The sort column defaults to 'filing_date' if not specified. The sort order defaults to 'desc' if not specified. + Sort *string `form:"sort,omitempty" json:"sort,omitempty"` +} + +// GetStocksFilingsVXIndexParams defines parameters for GetStocksFilingsVXIndex. +type GetStocksFilingsVXIndexParams struct { + // Cik SEC Central Index Key (CIK) identifying the filing entity. + Cik *string `form:"cik,omitempty" json:"cik,omitempty"` + + // CikAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + CikAnyOf *string `form:"cik.any_of,omitempty" json:"cik.any_of,omitempty"` + + // CikGt Filter greater than the value. + CikGt *string `form:"cik.gt,omitempty" json:"cik.gt,omitempty"` + + // CikGte Filter greater than or equal to the value. + CikGte *string `form:"cik.gte,omitempty" json:"cik.gte,omitempty"` + + // CikLt Filter less than the value. + CikLt *string `form:"cik.lt,omitempty" json:"cik.lt,omitempty"` + + // CikLte Filter less than or equal to the value. + CikLte *string `form:"cik.lte,omitempty" json:"cik.lte,omitempty"` + + // Ticker Stock ticker symbol for the filing entity, if available. + Ticker *string `form:"ticker,omitempty" json:"ticker,omitempty"` + + // TickerAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + TickerAnyOf *string `form:"ticker.any_of,omitempty" json:"ticker.any_of,omitempty"` + + // TickerGt Filter greater than the value. + TickerGt *string `form:"ticker.gt,omitempty" json:"ticker.gt,omitempty"` + + // TickerGte Filter greater than or equal to the value. + TickerGte *string `form:"ticker.gte,omitempty" json:"ticker.gte,omitempty"` + + // TickerLt Filter less than the value. + TickerLt *string `form:"ticker.lt,omitempty" json:"ticker.lt,omitempty"` + + // TickerLte Filter less than or equal to the value. + TickerLte *string `form:"ticker.lte,omitempty" json:"ticker.lte,omitempty"` + + // FormType SEC form type (e.g., '10-K', '10-Q', '8-K', 'S-1', '4', etc.). + FormType *string `form:"form_type,omitempty" json:"form_type,omitempty"` + + // FormTypeAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + FormTypeAnyOf *string `form:"form_type.any_of,omitempty" json:"form_type.any_of,omitempty"` + + // FormTypeGt Filter greater than the value. + FormTypeGt *string `form:"form_type.gt,omitempty" json:"form_type.gt,omitempty"` + + // FormTypeGte Filter greater than or equal to the value. + FormTypeGte *string `form:"form_type.gte,omitempty" json:"form_type.gte,omitempty"` + + // FormTypeLt Filter less than the value. + FormTypeLt *string `form:"form_type.lt,omitempty" json:"form_type.lt,omitempty"` + + // FormTypeLte Filter less than or equal to the value. + FormTypeLte *string `form:"form_type.lte,omitempty" json:"form_type.lte,omitempty"` + + // FilingDate Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD). Value must be formatted 'yyyy-mm-dd'. + FilingDate *string `form:"filing_date,omitempty" json:"filing_date,omitempty"` + + // FilingDateGt Filter greater than the value. Value must be formatted 'yyyy-mm-dd'. + FilingDateGt *string `form:"filing_date.gt,omitempty" json:"filing_date.gt,omitempty"` + + // FilingDateGte Filter greater than or equal to the value. Value must be formatted 'yyyy-mm-dd'. + FilingDateGte *string `form:"filing_date.gte,omitempty" json:"filing_date.gte,omitempty"` + + // FilingDateLt Filter less than the value. Value must be formatted 'yyyy-mm-dd'. + FilingDateLt *string `form:"filing_date.lt,omitempty" json:"filing_date.lt,omitempty"` + + // FilingDateLte Filter less than or equal to the value. Value must be formatted 'yyyy-mm-dd'. + FilingDateLte *string `form:"filing_date.lte,omitempty" json:"filing_date.lte,omitempty"` + + // Limit Limit the maximum number of results returned. Defaults to '1000' if not specified. The maximum allowed limit is '50000'. + Limit *int `form:"limit,omitempty" json:"limit,omitempty"` + + // Sort A comma separated list of sort columns. For each column, append '.asc' or '.desc' to specify the sort direction. The sort column defaults to 'filing_date' if not specified. The sort order defaults to 'desc' if not specified. + Sort *string `form:"sort,omitempty" json:"sort,omitempty"` +} + +// GetStocksFilingsVXRiskFactorsParams defines parameters for GetStocksFilingsVXRiskFactors. +type GetStocksFilingsVXRiskFactorsParams struct { + // FilingDate Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD). + FilingDate *string `form:"filing_date,omitempty" json:"filing_date,omitempty"` + + // FilingDateAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + FilingDateAnyOf *string `form:"filing_date.any_of,omitempty" json:"filing_date.any_of,omitempty"` + + // FilingDateGt Filter greater than the value. + FilingDateGt *string `form:"filing_date.gt,omitempty" json:"filing_date.gt,omitempty"` + + // FilingDateGte Filter greater than or equal to the value. + FilingDateGte *string `form:"filing_date.gte,omitempty" json:"filing_date.gte,omitempty"` + + // FilingDateLt Filter less than the value. + FilingDateLt *string `form:"filing_date.lt,omitempty" json:"filing_date.lt,omitempty"` + + // FilingDateLte Filter less than or equal to the value. + FilingDateLte *string `form:"filing_date.lte,omitempty" json:"filing_date.lte,omitempty"` + + // Ticker Stock ticker symbol for the company. + Ticker *string `form:"ticker,omitempty" json:"ticker,omitempty"` + + // TickerAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + TickerAnyOf *string `form:"ticker.any_of,omitempty" json:"ticker.any_of,omitempty"` + + // TickerGt Filter greater than the value. + TickerGt *string `form:"ticker.gt,omitempty" json:"ticker.gt,omitempty"` + + // TickerGte Filter greater than or equal to the value. + TickerGte *string `form:"ticker.gte,omitempty" json:"ticker.gte,omitempty"` + + // TickerLt Filter less than the value. + TickerLt *string `form:"ticker.lt,omitempty" json:"ticker.lt,omitempty"` + + // TickerLte Filter less than or equal to the value. + TickerLte *string `form:"ticker.lte,omitempty" json:"ticker.lte,omitempty"` + + // Cik SEC Central Index Key (10 digits, zero-padded). + Cik *string `form:"cik,omitempty" json:"cik,omitempty"` + + // CikAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + CikAnyOf *string `form:"cik.any_of,omitempty" json:"cik.any_of,omitempty"` + + // CikGt Filter greater than the value. + CikGt *string `form:"cik.gt,omitempty" json:"cik.gt,omitempty"` + + // CikGte Filter greater than or equal to the value. + CikGte *string `form:"cik.gte,omitempty" json:"cik.gte,omitempty"` + + // CikLt Filter less than the value. + CikLt *string `form:"cik.lt,omitempty" json:"cik.lt,omitempty"` + + // CikLte Filter less than or equal to the value. + CikLte *string `form:"cik.lte,omitempty" json:"cik.lte,omitempty"` + + // Limit Limit the maximum number of results returned. Defaults to '100' if not specified. The maximum allowed limit is '49999'. + Limit *int `form:"limit,omitempty" json:"limit,omitempty"` + + // Sort A comma separated list of sort columns. For each column, append '.asc' or '.desc' to specify the sort direction. The sort column defaults to 'filing_date' if not specified. The sort order defaults to 'desc' if not specified. + Sort *string `form:"sort,omitempty" json:"sort,omitempty"` +} + +// GetStocksFinancialsV1BalanceSheetsParams defines parameters for GetStocksFinancialsV1BalanceSheets. +type GetStocksFinancialsV1BalanceSheetsParams struct { + // Cik The company's Central Index Key (CIK), a unique identifier assigned by the U.AskSize. Securities and Exchange Commission (SEC). You can look up a company's CIK using the [SEC CIK Lookup tool](https://www.sec.gov/search-filings/cik-lookup). + Cik *string `form:"cik,omitempty" json:"cik,omitempty"` + + // CikAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + CikAnyOf *string `form:"cik.any_of,omitempty" json:"cik.any_of,omitempty"` + + // CikGt Filter greater than the value. + CikGt *string `form:"cik.gt,omitempty" json:"cik.gt,omitempty"` + + // CikGte Filter greater than or equal to the value. + CikGte *string `form:"cik.gte,omitempty" json:"cik.gte,omitempty"` + + // CikLt Filter less than the value. + CikLt *string `form:"cik.lt,omitempty" json:"cik.lt,omitempty"` + + // CikLte Filter less than or equal to the value. + CikLte *string `form:"cik.lte,omitempty" json:"cik.lte,omitempty"` + + // Tickers Filter for arrays that contain the value. + Tickers *string `form:"tickers,omitempty" json:"tickers,omitempty"` + + // TickersAllOf Filter for arrays that contain all of the values. Multiple values can be specified by using a comma separated list. + TickersAllOf *string `form:"tickers.all_of,omitempty" json:"tickers.all_of,omitempty"` + + // TickersAnyOf Filter for arrays that contain any of the values. Multiple values can be specified by using a comma separated list. + TickersAnyOf *string `form:"tickers.any_of,omitempty" json:"tickers.any_of,omitempty"` + + // PeriodEnd The last date of the reporting period, representing the specific point in time when the balance sheet snapshot was taken. Value must be formatted 'yyyy-mm-dd'. + PeriodEnd *string `form:"period_end,omitempty" json:"period_end,omitempty"` + + // PeriodEndGt Filter greater than the value. Value must be formatted 'yyyy-mm-dd'. + PeriodEndGt *string `form:"period_end.gt,omitempty" json:"period_end.gt,omitempty"` + + // PeriodEndGte Filter greater than or equal to the value. Value must be formatted 'yyyy-mm-dd'. + PeriodEndGte *string `form:"period_end.gte,omitempty" json:"period_end.gte,omitempty"` + + // PeriodEndLt Filter less than the value. Value must be formatted 'yyyy-mm-dd'. + PeriodEndLt *string `form:"period_end.lt,omitempty" json:"period_end.lt,omitempty"` + + // PeriodEndLte Filter less than or equal to the value. Value must be formatted 'yyyy-mm-dd'. + PeriodEndLte *string `form:"period_end.lte,omitempty" json:"period_end.lte,omitempty"` + + // FilingDate The date when the financial statement was filed with the SEC. Value must be formatted 'yyyy-mm-dd'. + FilingDate *string `form:"filing_date,omitempty" json:"filing_date,omitempty"` + + // FilingDateGt Filter greater than the value. Value must be formatted 'yyyy-mm-dd'. + FilingDateGt *string `form:"filing_date.gt,omitempty" json:"filing_date.gt,omitempty"` + + // FilingDateGte Filter greater than or equal to the value. Value must be formatted 'yyyy-mm-dd'. + FilingDateGte *string `form:"filing_date.gte,omitempty" json:"filing_date.gte,omitempty"` + + // FilingDateLt Filter less than the value. Value must be formatted 'yyyy-mm-dd'. + FilingDateLt *string `form:"filing_date.lt,omitempty" json:"filing_date.lt,omitempty"` + + // FilingDateLte Filter less than or equal to the value. Value must be formatted 'yyyy-mm-dd'. + FilingDateLte *string `form:"filing_date.lte,omitempty" json:"filing_date.lte,omitempty"` + + // FiscalYear The fiscal year for the reporting period. Value must be a floating point number. + FiscalYear *float64 `form:"fiscal_year,omitempty" json:"fiscal_year,omitempty"` + + // FiscalYearGt Filter greater than the value. Value must be a floating point number. + FiscalYearGt *float64 `form:"fiscal_year.gt,omitempty" json:"fiscal_year.gt,omitempty"` + + // FiscalYearGte Filter greater than or equal to the value. Value must be a floating point number. + FiscalYearGte *float64 `form:"fiscal_year.gte,omitempty" json:"fiscal_year.gte,omitempty"` + + // FiscalYearLt Filter less than the value. Value must be a floating point number. + FiscalYearLt *float64 `form:"fiscal_year.lt,omitempty" json:"fiscal_year.lt,omitempty"` + + // FiscalYearLte Filter less than or equal to the value. Value must be a floating point number. + FiscalYearLte *float64 `form:"fiscal_year.lte,omitempty" json:"fiscal_year.lte,omitempty"` + + // FiscalQuarter The fiscal quarter number (1, 2, 3, or 4) for the reporting period. Value must be a floating point number. + FiscalQuarter *float64 `form:"fiscal_quarter,omitempty" json:"fiscal_quarter,omitempty"` + + // FiscalQuarterGt Filter greater than the value. Value must be a floating point number. + FiscalQuarterGt *float64 `form:"fiscal_quarter.gt,omitempty" json:"fiscal_quarter.gt,omitempty"` + + // FiscalQuarterGte Filter greater than or equal to the value. Value must be a floating point number. + FiscalQuarterGte *float64 `form:"fiscal_quarter.gte,omitempty" json:"fiscal_quarter.gte,omitempty"` + + // FiscalQuarterLt Filter less than the value. Value must be a floating point number. + FiscalQuarterLt *float64 `form:"fiscal_quarter.lt,omitempty" json:"fiscal_quarter.lt,omitempty"` + + // FiscalQuarterLte Filter less than or equal to the value. Value must be a floating point number. + FiscalQuarterLte *float64 `form:"fiscal_quarter.lte,omitempty" json:"fiscal_quarter.lte,omitempty"` + + // Timeframe The reporting period type. Possible values include: quarterly, annual. + Timeframe *string `form:"timeframe,omitempty" json:"timeframe,omitempty"` + + // TimeframeAnyOf Filter equal to any of the values. Multiple values can be specified by using a comma separated list. + TimeframeAnyOf *string `form:"timeframe.any_of,omitempty" json:"timeframe.any_of,omitempty"` + + // TimeframeGt Filter greater than the value. + TimeframeGt *string `form:"timeframe.gt,omitempty" json:"timeframe.gt,omitempty"` + + // TimeframeGte Filter greater than or equal to the value. + TimeframeGte *string `form:"timeframe.gte,omitempty" json:"timeframe.gte,omitempty"` + + // TimeframeLt Filter less than the value. + TimeframeLt *string `form:"timeframe.lt,omitempty" json:"timeframe.lt,omitempty"` + + // TimeframeLte Filter less than or equal to the value. + TimeframeLte *string `form:"timeframe.lte,omitempty" json:"timeframe.lte,omitempty"` // MaxTicker Filter equal to the value. MaxTicker *string `form:"max_ticker,omitempty" json:"max_ticker,omitempty"` @@ -8317,6 +8515,9 @@ type ClientInterface interface { // GetFuturesV1Schedules request GetFuturesV1Schedules(ctx context.Context, params *GetFuturesV1SchedulesParams, reqEditors ...RequestEditorFn) (*http.Response, error) + // GetFuturesV1Snapshot request + GetFuturesV1Snapshot(ctx context.Context, params *GetFuturesV1SnapshotParams, reqEditors ...RequestEditorFn) (*http.Response, error) + // GetFuturesV1Trades request GetFuturesV1Trades(ctx context.Context, ticker string, params *GetFuturesV1TradesParams, reqEditors ...RequestEditorFn) (*http.Response, error) @@ -8359,6 +8560,12 @@ type ClientInterface interface { // GetStocksFilingsVX13F request GetStocksFilingsVX13F(ctx context.Context, params *GetStocksFilingsVX13FParams, reqEditors ...RequestEditorFn) (*http.Response, error) + // GetStocksFilingsVXForm3 request + GetStocksFilingsVXForm3(ctx context.Context, params *GetStocksFilingsVXForm3Params, reqEditors ...RequestEditorFn) (*http.Response, error) + + // GetStocksFilingsVXForm4 request + GetStocksFilingsVXForm4(ctx context.Context, params *GetStocksFilingsVXForm4Params, reqEditors ...RequestEditorFn) (*http.Response, error) + // GetStocksFilingsVXIndex request GetStocksFilingsVXIndex(ctx context.Context, params *GetStocksFilingsVXIndexParams, reqEditors ...RequestEditorFn) (*http.Response, error) @@ -9005,6 +9212,18 @@ func (c *Client) GetFuturesV1Schedules(ctx context.Context, params *GetFuturesV1 return c.Client.Do(req) } +func (c *Client) GetFuturesV1Snapshot(ctx context.Context, params *GetFuturesV1SnapshotParams, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetFuturesV1SnapshotRequest(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + func (c *Client) GetFuturesV1Trades(ctx context.Context, ticker string, params *GetFuturesV1TradesParams, reqEditors ...RequestEditorFn) (*http.Response, error) { req, err := NewGetFuturesV1TradesRequest(c.Server, ticker, params) if err != nil { @@ -9173,6 +9392,30 @@ func (c *Client) GetStocksFilingsVX13F(ctx context.Context, params *GetStocksFil return c.Client.Do(req) } +func (c *Client) GetStocksFilingsVXForm3(ctx context.Context, params *GetStocksFilingsVXForm3Params, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetStocksFilingsVXForm3Request(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) GetStocksFilingsVXForm4(ctx context.Context, params *GetStocksFilingsVXForm4Params, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetStocksFilingsVXForm4Request(c.Server, params) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + func (c *Client) GetStocksFilingsVXIndex(ctx context.Context, params *GetStocksFilingsVXIndexParams, reqEditors ...RequestEditorFn) (*http.Response, error) { req, err := NewGetStocksFilingsVXIndexRequest(c.Server, params) if err != nil { @@ -21707,6 +21950,263 @@ func NewGetFuturesV1SchedulesRequest(server string, params *GetFuturesV1Schedule return req, nil } +// NewGetFuturesV1SnapshotRequest generates requests for GetFuturesV1Snapshot +func NewGetFuturesV1SnapshotRequest(server string, params *GetFuturesV1SnapshotParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/futures/v1/snapshot") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.ProductCode != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "product_code", runtime.ParamLocationQuery, *params.ProductCode); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ProductCodeAnyOf != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "product_code.any_of", runtime.ParamLocationQuery, *params.ProductCodeAnyOf); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ProductCodeGt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "product_code.gt", runtime.ParamLocationQuery, *params.ProductCodeGt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ProductCodeGte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "product_code.gte", runtime.ParamLocationQuery, *params.ProductCodeGte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ProductCodeLt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "product_code.lt", runtime.ParamLocationQuery, *params.ProductCodeLt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.ProductCodeLte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "product_code.lte", runtime.ParamLocationQuery, *params.ProductCodeLte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Ticker != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker", runtime.ParamLocationQuery, *params.Ticker); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.TickerAnyOf != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.any_of", runtime.ParamLocationQuery, *params.TickerAnyOf); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.TickerGt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.gt", runtime.ParamLocationQuery, *params.TickerGt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.TickerGte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.gte", runtime.ParamLocationQuery, *params.TickerGte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.TickerLt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.lt", runtime.ParamLocationQuery, *params.TickerLt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.TickerLte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.lte", runtime.ParamLocationQuery, *params.TickerLte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Sort != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "sort", runtime.ParamLocationQuery, *params.Sort); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + // NewGetFuturesV1TradesRequest generates requests for GetFuturesV1Trades func NewGetFuturesV1TradesRequest(server string, ticker string, params *GetFuturesV1TradesParams) (*http.Request, error) { var err error @@ -25290,9 +25790,9 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - if params.AccessionNumber != nil { + if params.FilingDate != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "accession_number", runtime.ParamLocationQuery, *params.AccessionNumber); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date", runtime.ParamLocationQuery, *params.FilingDate); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25306,9 +25806,9 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - if params.AccessionNumberAnyOf != nil { + if params.FilingDateGt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "accession_number.any_of", runtime.ParamLocationQuery, *params.AccessionNumberAnyOf); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gt", runtime.ParamLocationQuery, *params.FilingDateGt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25322,9 +25822,9 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - if params.AccessionNumberGt != nil { + if params.FilingDateGte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "accession_number.gt", runtime.ParamLocationQuery, *params.AccessionNumberGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gte", runtime.ParamLocationQuery, *params.FilingDateGte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25338,9 +25838,9 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - if params.AccessionNumberGte != nil { + if params.FilingDateLt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "accession_number.gte", runtime.ParamLocationQuery, *params.AccessionNumberGte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lt", runtime.ParamLocationQuery, *params.FilingDateLt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25354,9 +25854,9 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - if params.AccessionNumberLt != nil { + if params.FilingDateLte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "accession_number.lt", runtime.ParamLocationQuery, *params.AccessionNumberLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lte", runtime.ParamLocationQuery, *params.FilingDateLte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25370,9 +25870,9 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - if params.AccessionNumberLte != nil { + if params.Limit != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "accession_number.lte", runtime.ParamLocationQuery, *params.AccessionNumberLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25386,9 +25886,9 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - if params.FilingDate != nil { + if params.Sort != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date", runtime.ParamLocationQuery, *params.FilingDate); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "sort", runtime.ParamLocationQuery, *params.Sort); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25402,9 +25902,42 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - if params.FilingDateGt != nil { + queryURL.RawQuery = queryValues.Encode() + } - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gt", runtime.ParamLocationQuery, *params.FilingDateGt); err != nil { + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + +// NewGetStocksFilingsVXForm3Request generates requests for GetStocksFilingsVXForm3 +func NewGetStocksFilingsVXForm3Request(server string, params *GetStocksFilingsVXForm3Params) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/stocks/filings/vX/form-3") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.IssuerCik != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "issuer_cik", runtime.ParamLocationQuery, *params.IssuerCik); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25418,9 +25951,9 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - if params.FilingDateGte != nil { + if params.IssuerCikAnyOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gte", runtime.ParamLocationQuery, *params.FilingDateGte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "issuer_cik.any_of", runtime.ParamLocationQuery, *params.IssuerCikAnyOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25434,9 +25967,9 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - if params.FilingDateLt != nil { + if params.OwnerCik != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lt", runtime.ParamLocationQuery, *params.FilingDateLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "owner_cik", runtime.ParamLocationQuery, *params.OwnerCik); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25450,9 +25983,9 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - if params.FilingDateLte != nil { + if params.OwnerCikAnyOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lte", runtime.ParamLocationQuery, *params.FilingDateLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "owner_cik.any_of", runtime.ParamLocationQuery, *params.OwnerCikAnyOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25466,9 +25999,9 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - if params.Limit != nil { + if params.Tickers != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "tickers", runtime.ParamLocationQuery, *params.Tickers); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25482,9 +26015,9 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - if params.Sort != nil { + if params.TickersAllOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "sort", runtime.ParamLocationQuery, *params.Sort); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "tickers.all_of", runtime.ParamLocationQuery, *params.TickersAllOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25498,42 +26031,25 @@ func NewGetStocksFilingsVX13FRequest(server string, params *GetStocksFilingsVX13 } - queryURL.RawQuery = queryValues.Encode() - } - - req, err := http.NewRequest("GET", queryURL.String(), nil) - if err != nil { - return nil, err - } - - return req, nil -} - -// NewGetStocksFilingsVXIndexRequest generates requests for GetStocksFilingsVXIndex -func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVXIndexParams) (*http.Request, error) { - var err error - - serverURL, err := url.Parse(server) - if err != nil { - return nil, err - } - - operationPath := fmt.Sprintf("/stocks/filings/vX/index") - if operationPath[0] == '/' { - operationPath = "." + operationPath - } + if params.TickersAnyOf != nil { - queryURL, err := serverURL.Parse(operationPath) - if err != nil { - return nil, err - } + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "tickers.any_of", runtime.ParamLocationQuery, *params.TickersAnyOf); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } - if params != nil { - queryValues := queryURL.Query() + } - if params.Cik != nil { + if params.FormType != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik", runtime.ParamLocationQuery, *params.Cik); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type", runtime.ParamLocationQuery, *params.FormType); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25547,9 +26063,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.CikAnyOf != nil { + if params.FilingDate != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.any_of", runtime.ParamLocationQuery, *params.CikAnyOf); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date", runtime.ParamLocationQuery, *params.FilingDate); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25563,9 +26079,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.CikGt != nil { + if params.FilingDateGt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.gt", runtime.ParamLocationQuery, *params.CikGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gt", runtime.ParamLocationQuery, *params.FilingDateGt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25579,9 +26095,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.CikGte != nil { + if params.FilingDateGte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.gte", runtime.ParamLocationQuery, *params.CikGte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gte", runtime.ParamLocationQuery, *params.FilingDateGte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25595,9 +26111,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.CikLt != nil { + if params.FilingDateLt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.lt", runtime.ParamLocationQuery, *params.CikLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lt", runtime.ParamLocationQuery, *params.FilingDateLt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25611,9 +26127,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.CikLte != nil { + if params.FilingDateLte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.lte", runtime.ParamLocationQuery, *params.CikLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lte", runtime.ParamLocationQuery, *params.FilingDateLte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25627,9 +26143,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.Ticker != nil { + if params.MaxTicker != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker", runtime.ParamLocationQuery, *params.Ticker); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker", runtime.ParamLocationQuery, *params.MaxTicker); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25643,9 +26159,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.TickerAnyOf != nil { + if params.MaxTickerAnyOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.any_of", runtime.ParamLocationQuery, *params.TickerAnyOf); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.any_of", runtime.ParamLocationQuery, *params.MaxTickerAnyOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25659,9 +26175,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.TickerGt != nil { + if params.MaxTickerGt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.gt", runtime.ParamLocationQuery, *params.TickerGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.gt", runtime.ParamLocationQuery, *params.MaxTickerGt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25675,9 +26191,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.TickerGte != nil { + if params.MaxTickerGte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.gte", runtime.ParamLocationQuery, *params.TickerGte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.gte", runtime.ParamLocationQuery, *params.MaxTickerGte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25691,9 +26207,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.TickerLt != nil { + if params.MaxTickerLt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.lt", runtime.ParamLocationQuery, *params.TickerLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.lt", runtime.ParamLocationQuery, *params.MaxTickerLt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25707,9 +26223,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.TickerLte != nil { + if params.MaxTickerLte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.lte", runtime.ParamLocationQuery, *params.TickerLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.lte", runtime.ParamLocationQuery, *params.MaxTickerLte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25723,9 +26239,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.FormType != nil { + if params.MinTicker != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type", runtime.ParamLocationQuery, *params.FormType); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker", runtime.ParamLocationQuery, *params.MinTicker); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25739,9 +26255,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.FormTypeAnyOf != nil { + if params.MinTickerAnyOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type.any_of", runtime.ParamLocationQuery, *params.FormTypeAnyOf); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.any_of", runtime.ParamLocationQuery, *params.MinTickerAnyOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25755,9 +26271,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.FormTypeGt != nil { + if params.MinTickerGt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type.gt", runtime.ParamLocationQuery, *params.FormTypeGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.gt", runtime.ParamLocationQuery, *params.MinTickerGt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25771,9 +26287,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.FormTypeGte != nil { + if params.MinTickerGte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type.gte", runtime.ParamLocationQuery, *params.FormTypeGte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.gte", runtime.ParamLocationQuery, *params.MinTickerGte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25787,9 +26303,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.FormTypeLt != nil { + if params.MinTickerLt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type.lt", runtime.ParamLocationQuery, *params.FormTypeLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.lt", runtime.ParamLocationQuery, *params.MinTickerLt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25803,9 +26319,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.FormTypeLte != nil { + if params.MinTickerLte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type.lte", runtime.ParamLocationQuery, *params.FormTypeLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.lte", runtime.ParamLocationQuery, *params.MinTickerLte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25819,9 +26335,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.FilingDate != nil { + if params.Limit != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date", runtime.ParamLocationQuery, *params.FilingDate); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25835,9 +26351,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.FilingDateGt != nil { + if params.Sort != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gt", runtime.ParamLocationQuery, *params.FilingDateGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "sort", runtime.ParamLocationQuery, *params.Sort); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25851,9 +26367,42 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.FilingDateGte != nil { + queryURL.RawQuery = queryValues.Encode() + } - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gte", runtime.ParamLocationQuery, *params.FilingDateGte); err != nil { + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + +// NewGetStocksFilingsVXForm4Request generates requests for GetStocksFilingsVXForm4 +func NewGetStocksFilingsVXForm4Request(server string, params *GetStocksFilingsVXForm4Params) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/stocks/filings/vX/form-4") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.IssuerCik != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "issuer_cik", runtime.ParamLocationQuery, *params.IssuerCik); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25867,9 +26416,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.FilingDateLt != nil { + if params.IssuerCikAnyOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lt", runtime.ParamLocationQuery, *params.FilingDateLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "issuer_cik.any_of", runtime.ParamLocationQuery, *params.IssuerCikAnyOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25883,9 +26432,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.FilingDateLte != nil { + if params.OwnerCik != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lte", runtime.ParamLocationQuery, *params.FilingDateLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "owner_cik", runtime.ParamLocationQuery, *params.OwnerCik); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25899,9 +26448,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.Limit != nil { + if params.OwnerCikAnyOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "owner_cik.any_of", runtime.ParamLocationQuery, *params.OwnerCikAnyOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25915,9 +26464,9 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - if params.Sort != nil { + if params.Tickers != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "sort", runtime.ParamLocationQuery, *params.Sort); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "tickers", runtime.ParamLocationQuery, *params.Tickers); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25931,42 +26480,41 @@ func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVX } - queryURL.RawQuery = queryValues.Encode() - } - - req, err := http.NewRequest("GET", queryURL.String(), nil) - if err != nil { - return nil, err - } - - return req, nil -} + if params.TickersAllOf != nil { -// NewGetStocksFilingsVXRiskFactorsRequest generates requests for GetStocksFilingsVXRiskFactors -func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFilingsVXRiskFactorsParams) (*http.Request, error) { - var err error + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "tickers.all_of", runtime.ParamLocationQuery, *params.TickersAllOf); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } - serverURL, err := url.Parse(server) - if err != nil { - return nil, err - } + } - operationPath := fmt.Sprintf("/stocks/filings/vX/risk-factors") - if operationPath[0] == '/' { - operationPath = "." + operationPath - } + if params.TickersAnyOf != nil { - queryURL, err := serverURL.Parse(operationPath) - if err != nil { - return nil, err - } + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "tickers.any_of", runtime.ParamLocationQuery, *params.TickersAnyOf); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } - if params != nil { - queryValues := queryURL.Query() + } - if params.FilingDate != nil { + if params.FormType != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date", runtime.ParamLocationQuery, *params.FilingDate); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type", runtime.ParamLocationQuery, *params.FormType); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -25980,9 +26528,9 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil } - if params.FilingDateAnyOf != nil { + if params.FilingDate != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.any_of", runtime.ParamLocationQuery, *params.FilingDateAnyOf); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date", runtime.ParamLocationQuery, *params.FilingDate); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26060,9 +26608,9 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil } - if params.Ticker != nil { + if params.TransactionCode != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker", runtime.ParamLocationQuery, *params.Ticker); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "transaction_code", runtime.ParamLocationQuery, *params.TransactionCode); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26076,9 +26624,9 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil } - if params.TickerAnyOf != nil { + if params.MaxTicker != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.any_of", runtime.ParamLocationQuery, *params.TickerAnyOf); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker", runtime.ParamLocationQuery, *params.MaxTicker); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26092,9 +26640,9 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil } - if params.TickerGt != nil { + if params.MaxTickerAnyOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.gt", runtime.ParamLocationQuery, *params.TickerGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.any_of", runtime.ParamLocationQuery, *params.MaxTickerAnyOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26108,9 +26656,9 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil } - if params.TickerGte != nil { + if params.MaxTickerGt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.gte", runtime.ParamLocationQuery, *params.TickerGte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.gt", runtime.ParamLocationQuery, *params.MaxTickerGt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26124,9 +26672,9 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil } - if params.TickerLt != nil { + if params.MaxTickerGte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.lt", runtime.ParamLocationQuery, *params.TickerLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.gte", runtime.ParamLocationQuery, *params.MaxTickerGte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26140,9 +26688,9 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil } - if params.TickerLte != nil { + if params.MaxTickerLt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.lte", runtime.ParamLocationQuery, *params.TickerLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.lt", runtime.ParamLocationQuery, *params.MaxTickerLt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26156,9 +26704,9 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil } - if params.Cik != nil { + if params.MaxTickerLte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik", runtime.ParamLocationQuery, *params.Cik); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.lte", runtime.ParamLocationQuery, *params.MaxTickerLte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26172,9 +26720,9 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil } - if params.CikAnyOf != nil { + if params.MinTicker != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.any_of", runtime.ParamLocationQuery, *params.CikAnyOf); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker", runtime.ParamLocationQuery, *params.MinTicker); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26188,9 +26736,9 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil } - if params.CikGt != nil { + if params.MinTickerAnyOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.gt", runtime.ParamLocationQuery, *params.CikGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.any_of", runtime.ParamLocationQuery, *params.MinTickerAnyOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26204,9 +26752,9 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil } - if params.CikGte != nil { + if params.MinTickerGt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.gte", runtime.ParamLocationQuery, *params.CikGte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.gt", runtime.ParamLocationQuery, *params.MinTickerGt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26220,9 +26768,9 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil } - if params.CikLt != nil { + if params.MinTickerGte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.lt", runtime.ParamLocationQuery, *params.CikLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.gte", runtime.ParamLocationQuery, *params.MinTickerGte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26236,9 +26784,25 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil } - if params.CikLte != nil { + if params.MinTickerLt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.lte", runtime.ParamLocationQuery, *params.CikLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.lt", runtime.ParamLocationQuery, *params.MinTickerLt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.MinTickerLte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.lte", runtime.ParamLocationQuery, *params.MinTickerLte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26295,8 +26859,8 @@ func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFil return req, nil } -// NewGetStocksFinancialsV1BalanceSheetsRequest generates requests for GetStocksFinancialsV1BalanceSheets -func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStocksFinancialsV1BalanceSheetsParams) (*http.Request, error) { +// NewGetStocksFilingsVXIndexRequest generates requests for GetStocksFilingsVXIndex +func NewGetStocksFilingsVXIndexRequest(server string, params *GetStocksFilingsVXIndexParams) (*http.Request, error) { var err error serverURL, err := url.Parse(server) @@ -26304,7 +26868,7 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc return nil, err } - operationPath := fmt.Sprintf("/stocks/financials/v1/balance-sheets") + operationPath := fmt.Sprintf("/stocks/filings/vX/index") if operationPath[0] == '/' { operationPath = "." + operationPath } @@ -26413,25 +26977,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.Tickers != nil { - - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "tickers", runtime.ParamLocationQuery, *params.Tickers); err != nil { - return nil, err - } else if parsed, err := url.ParseQuery(queryFrag); err != nil { - return nil, err - } else { - for k, v := range parsed { - for _, v2 := range v { - queryValues.Add(k, v2) - } - } - } - - } - - if params.TickersAllOf != nil { + if params.Ticker != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "tickers.all_of", runtime.ParamLocationQuery, *params.TickersAllOf); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker", runtime.ParamLocationQuery, *params.Ticker); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26445,9 +26993,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.TickersAnyOf != nil { + if params.TickerAnyOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "tickers.any_of", runtime.ParamLocationQuery, *params.TickersAnyOf); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.any_of", runtime.ParamLocationQuery, *params.TickerAnyOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26461,9 +27009,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.PeriodEnd != nil { + if params.TickerGt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "period_end", runtime.ParamLocationQuery, *params.PeriodEnd); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.gt", runtime.ParamLocationQuery, *params.TickerGt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26477,9 +27025,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.PeriodEndGt != nil { + if params.TickerGte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "period_end.gt", runtime.ParamLocationQuery, *params.PeriodEndGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.gte", runtime.ParamLocationQuery, *params.TickerGte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26493,9 +27041,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.PeriodEndGte != nil { + if params.TickerLt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "period_end.gte", runtime.ParamLocationQuery, *params.PeriodEndGte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.lt", runtime.ParamLocationQuery, *params.TickerLt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26509,9 +27057,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.PeriodEndLt != nil { + if params.TickerLte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "period_end.lt", runtime.ParamLocationQuery, *params.PeriodEndLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.lte", runtime.ParamLocationQuery, *params.TickerLte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26525,9 +27073,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.PeriodEndLte != nil { + if params.FormType != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "period_end.lte", runtime.ParamLocationQuery, *params.PeriodEndLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type", runtime.ParamLocationQuery, *params.FormType); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26541,9 +27089,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.FilingDate != nil { + if params.FormTypeAnyOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date", runtime.ParamLocationQuery, *params.FilingDate); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type.any_of", runtime.ParamLocationQuery, *params.FormTypeAnyOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26557,9 +27105,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.FilingDateGt != nil { + if params.FormTypeGt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gt", runtime.ParamLocationQuery, *params.FilingDateGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type.gt", runtime.ParamLocationQuery, *params.FormTypeGt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26573,9 +27121,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.FilingDateGte != nil { + if params.FormTypeGte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gte", runtime.ParamLocationQuery, *params.FilingDateGte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type.gte", runtime.ParamLocationQuery, *params.FormTypeGte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26589,9 +27137,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.FilingDateLt != nil { + if params.FormTypeLt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lt", runtime.ParamLocationQuery, *params.FilingDateLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type.lt", runtime.ParamLocationQuery, *params.FormTypeLt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26605,9 +27153,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.FilingDateLte != nil { + if params.FormTypeLte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lte", runtime.ParamLocationQuery, *params.FilingDateLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "form_type.lte", runtime.ParamLocationQuery, *params.FormTypeLte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26621,9 +27169,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.FiscalYear != nil { + if params.FilingDate != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_year", runtime.ParamLocationQuery, *params.FiscalYear); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date", runtime.ParamLocationQuery, *params.FilingDate); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26637,9 +27185,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.FiscalYearGt != nil { + if params.FilingDateGt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_year.gt", runtime.ParamLocationQuery, *params.FiscalYearGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gt", runtime.ParamLocationQuery, *params.FilingDateGt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26653,9 +27201,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.FiscalYearGte != nil { + if params.FilingDateGte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_year.gte", runtime.ParamLocationQuery, *params.FiscalYearGte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gte", runtime.ParamLocationQuery, *params.FilingDateGte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26669,9 +27217,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.FiscalYearLt != nil { + if params.FilingDateLt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_year.lt", runtime.ParamLocationQuery, *params.FiscalYearLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lt", runtime.ParamLocationQuery, *params.FilingDateLt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26685,9 +27233,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.FiscalYearLte != nil { + if params.FilingDateLte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_year.lte", runtime.ParamLocationQuery, *params.FiscalYearLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lte", runtime.ParamLocationQuery, *params.FilingDateLte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26701,9 +27249,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.FiscalQuarter != nil { + if params.Limit != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_quarter", runtime.ParamLocationQuery, *params.FiscalQuarter); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26717,9 +27265,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.FiscalQuarterGt != nil { + if params.Sort != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_quarter.gt", runtime.ParamLocationQuery, *params.FiscalQuarterGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "sort", runtime.ParamLocationQuery, *params.Sort); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26733,57 +27281,42 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.FiscalQuarterGte != nil { - - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_quarter.gte", runtime.ParamLocationQuery, *params.FiscalQuarterGte); err != nil { - return nil, err - } else if parsed, err := url.ParseQuery(queryFrag); err != nil { - return nil, err - } else { - for k, v := range parsed { - for _, v2 := range v { - queryValues.Add(k, v2) - } - } - } + queryURL.RawQuery = queryValues.Encode() + } - } + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } - if params.FiscalQuarterLt != nil { + return req, nil +} - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_quarter.lt", runtime.ParamLocationQuery, *params.FiscalQuarterLt); err != nil { - return nil, err - } else if parsed, err := url.ParseQuery(queryFrag); err != nil { - return nil, err - } else { - for k, v := range parsed { - for _, v2 := range v { - queryValues.Add(k, v2) - } - } - } +// NewGetStocksFilingsVXRiskFactorsRequest generates requests for GetStocksFilingsVXRiskFactors +func NewGetStocksFilingsVXRiskFactorsRequest(server string, params *GetStocksFilingsVXRiskFactorsParams) (*http.Request, error) { + var err error - } + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } - if params.FiscalQuarterLte != nil { + operationPath := fmt.Sprintf("/stocks/filings/vX/risk-factors") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_quarter.lte", runtime.ParamLocationQuery, *params.FiscalQuarterLte); err != nil { - return nil, err - } else if parsed, err := url.ParseQuery(queryFrag); err != nil { - return nil, err - } else { - for k, v := range parsed { - for _, v2 := range v { - queryValues.Add(k, v2) - } - } - } + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } - } + if params != nil { + queryValues := queryURL.Query() - if params.Timeframe != nil { + if params.FilingDate != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "timeframe", runtime.ParamLocationQuery, *params.Timeframe); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date", runtime.ParamLocationQuery, *params.FilingDate); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26797,9 +27330,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.TimeframeAnyOf != nil { + if params.FilingDateAnyOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "timeframe.any_of", runtime.ParamLocationQuery, *params.TimeframeAnyOf); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.any_of", runtime.ParamLocationQuery, *params.FilingDateAnyOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26813,9 +27346,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.TimeframeGt != nil { + if params.FilingDateGt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "timeframe.gt", runtime.ParamLocationQuery, *params.TimeframeGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gt", runtime.ParamLocationQuery, *params.FilingDateGt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26829,9 +27362,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.TimeframeGte != nil { + if params.FilingDateGte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "timeframe.gte", runtime.ParamLocationQuery, *params.TimeframeGte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gte", runtime.ParamLocationQuery, *params.FilingDateGte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26845,9 +27378,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.TimeframeLt != nil { + if params.FilingDateLt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "timeframe.lt", runtime.ParamLocationQuery, *params.TimeframeLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lt", runtime.ParamLocationQuery, *params.FilingDateLt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26861,9 +27394,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.TimeframeLte != nil { + if params.FilingDateLte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "timeframe.lte", runtime.ParamLocationQuery, *params.TimeframeLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lte", runtime.ParamLocationQuery, *params.FilingDateLte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26877,9 +27410,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.MaxTicker != nil { + if params.Ticker != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker", runtime.ParamLocationQuery, *params.MaxTicker); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker", runtime.ParamLocationQuery, *params.Ticker); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26893,9 +27426,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.MaxTickerAnyOf != nil { + if params.TickerAnyOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.any_of", runtime.ParamLocationQuery, *params.MaxTickerAnyOf); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.any_of", runtime.ParamLocationQuery, *params.TickerAnyOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26909,9 +27442,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.MaxTickerGt != nil { + if params.TickerGt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.gt", runtime.ParamLocationQuery, *params.MaxTickerGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.gt", runtime.ParamLocationQuery, *params.TickerGt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26925,9 +27458,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.MaxTickerGte != nil { + if params.TickerGte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.gte", runtime.ParamLocationQuery, *params.MaxTickerGte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.gte", runtime.ParamLocationQuery, *params.TickerGte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26941,9 +27474,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.MaxTickerLt != nil { + if params.TickerLt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.lt", runtime.ParamLocationQuery, *params.MaxTickerLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.lt", runtime.ParamLocationQuery, *params.TickerLt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26957,9 +27490,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.MaxTickerLte != nil { + if params.TickerLte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.lte", runtime.ParamLocationQuery, *params.MaxTickerLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ticker.lte", runtime.ParamLocationQuery, *params.TickerLte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26973,9 +27506,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.MinTicker != nil { + if params.Cik != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker", runtime.ParamLocationQuery, *params.MinTicker); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik", runtime.ParamLocationQuery, *params.Cik); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -26989,9 +27522,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.MinTickerAnyOf != nil { + if params.CikAnyOf != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.any_of", runtime.ParamLocationQuery, *params.MinTickerAnyOf); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.any_of", runtime.ParamLocationQuery, *params.CikAnyOf); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -27005,9 +27538,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.MinTickerGt != nil { + if params.CikGt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.gt", runtime.ParamLocationQuery, *params.MinTickerGt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.gt", runtime.ParamLocationQuery, *params.CikGt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -27021,9 +27554,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.MinTickerGte != nil { + if params.CikGte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.gte", runtime.ParamLocationQuery, *params.MinTickerGte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.gte", runtime.ParamLocationQuery, *params.CikGte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -27037,9 +27570,9 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.MinTickerLt != nil { + if params.CikLt != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.lt", runtime.ParamLocationQuery, *params.MinTickerLt); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.lt", runtime.ParamLocationQuery, *params.CikLt); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -27053,9 +27586,826 @@ func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStoc } - if params.MinTickerLte != nil { + if params.CikLte != nil { - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.lte", runtime.ParamLocationQuery, *params.MinTickerLte); err != nil { + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.lte", runtime.ParamLocationQuery, *params.CikLte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Limit != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "limit", runtime.ParamLocationQuery, *params.Limit); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Sort != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "sort", runtime.ParamLocationQuery, *params.Sort); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + queryURL.RawQuery = queryValues.Encode() + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + +// NewGetStocksFinancialsV1BalanceSheetsRequest generates requests for GetStocksFinancialsV1BalanceSheets +func NewGetStocksFinancialsV1BalanceSheetsRequest(server string, params *GetStocksFinancialsV1BalanceSheetsParams) (*http.Request, error) { + var err error + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/stocks/financials/v1/balance-sheets") + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + if params != nil { + queryValues := queryURL.Query() + + if params.Cik != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik", runtime.ParamLocationQuery, *params.Cik); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CikAnyOf != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.any_of", runtime.ParamLocationQuery, *params.CikAnyOf); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CikGt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.gt", runtime.ParamLocationQuery, *params.CikGt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CikGte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.gte", runtime.ParamLocationQuery, *params.CikGte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CikLt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.lt", runtime.ParamLocationQuery, *params.CikLt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.CikLte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cik.lte", runtime.ParamLocationQuery, *params.CikLte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Tickers != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "tickers", runtime.ParamLocationQuery, *params.Tickers); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.TickersAllOf != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "tickers.all_of", runtime.ParamLocationQuery, *params.TickersAllOf); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.TickersAnyOf != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "tickers.any_of", runtime.ParamLocationQuery, *params.TickersAnyOf); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PeriodEnd != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "period_end", runtime.ParamLocationQuery, *params.PeriodEnd); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PeriodEndGt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "period_end.gt", runtime.ParamLocationQuery, *params.PeriodEndGt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PeriodEndGte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "period_end.gte", runtime.ParamLocationQuery, *params.PeriodEndGte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PeriodEndLt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "period_end.lt", runtime.ParamLocationQuery, *params.PeriodEndLt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.PeriodEndLte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "period_end.lte", runtime.ParamLocationQuery, *params.PeriodEndLte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FilingDate != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date", runtime.ParamLocationQuery, *params.FilingDate); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FilingDateGt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gt", runtime.ParamLocationQuery, *params.FilingDateGt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FilingDateGte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.gte", runtime.ParamLocationQuery, *params.FilingDateGte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FilingDateLt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lt", runtime.ParamLocationQuery, *params.FilingDateLt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FilingDateLte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "filing_date.lte", runtime.ParamLocationQuery, *params.FilingDateLte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FiscalYear != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_year", runtime.ParamLocationQuery, *params.FiscalYear); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FiscalYearGt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_year.gt", runtime.ParamLocationQuery, *params.FiscalYearGt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FiscalYearGte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_year.gte", runtime.ParamLocationQuery, *params.FiscalYearGte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FiscalYearLt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_year.lt", runtime.ParamLocationQuery, *params.FiscalYearLt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FiscalYearLte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_year.lte", runtime.ParamLocationQuery, *params.FiscalYearLte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FiscalQuarter != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_quarter", runtime.ParamLocationQuery, *params.FiscalQuarter); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FiscalQuarterGt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_quarter.gt", runtime.ParamLocationQuery, *params.FiscalQuarterGt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FiscalQuarterGte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_quarter.gte", runtime.ParamLocationQuery, *params.FiscalQuarterGte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FiscalQuarterLt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_quarter.lt", runtime.ParamLocationQuery, *params.FiscalQuarterLt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.FiscalQuarterLte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "fiscal_quarter.lte", runtime.ParamLocationQuery, *params.FiscalQuarterLte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.Timeframe != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "timeframe", runtime.ParamLocationQuery, *params.Timeframe); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.TimeframeAnyOf != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "timeframe.any_of", runtime.ParamLocationQuery, *params.TimeframeAnyOf); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.TimeframeGt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "timeframe.gt", runtime.ParamLocationQuery, *params.TimeframeGt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.TimeframeGte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "timeframe.gte", runtime.ParamLocationQuery, *params.TimeframeGte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.TimeframeLt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "timeframe.lt", runtime.ParamLocationQuery, *params.TimeframeLt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.TimeframeLte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "timeframe.lte", runtime.ParamLocationQuery, *params.TimeframeLte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.MaxTicker != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker", runtime.ParamLocationQuery, *params.MaxTicker); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.MaxTickerAnyOf != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.any_of", runtime.ParamLocationQuery, *params.MaxTickerAnyOf); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.MaxTickerGt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.gt", runtime.ParamLocationQuery, *params.MaxTickerGt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.MaxTickerGte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.gte", runtime.ParamLocationQuery, *params.MaxTickerGte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.MaxTickerLt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.lt", runtime.ParamLocationQuery, *params.MaxTickerLt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.MaxTickerLte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "max_ticker.lte", runtime.ParamLocationQuery, *params.MaxTickerLte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.MinTicker != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker", runtime.ParamLocationQuery, *params.MinTicker); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.MinTickerAnyOf != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.any_of", runtime.ParamLocationQuery, *params.MinTickerAnyOf); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.MinTickerGt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.gt", runtime.ParamLocationQuery, *params.MinTickerGt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.MinTickerGte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.gte", runtime.ParamLocationQuery, *params.MinTickerGte); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.MinTickerLt != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.lt", runtime.ParamLocationQuery, *params.MinTickerLt); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + + if params.MinTickerLte != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "min_ticker.lte", runtime.ParamLocationQuery, *params.MinTickerLte); err != nil { return nil, err } else if parsed, err := url.ParseQuery(queryFrag); err != nil { return nil, err @@ -45811,6 +47161,9 @@ type ClientWithResponsesInterface interface { // GetFuturesV1SchedulesWithResponse request GetFuturesV1SchedulesWithResponse(ctx context.Context, params *GetFuturesV1SchedulesParams, reqEditors ...RequestEditorFn) (*GetFuturesV1SchedulesResponse, error) + // GetFuturesV1SnapshotWithResponse request + GetFuturesV1SnapshotWithResponse(ctx context.Context, params *GetFuturesV1SnapshotParams, reqEditors ...RequestEditorFn) (*GetFuturesV1SnapshotResponse, error) + // GetFuturesV1TradesWithResponse request GetFuturesV1TradesWithResponse(ctx context.Context, ticker string, params *GetFuturesV1TradesParams, reqEditors ...RequestEditorFn) (*GetFuturesV1TradesResponse, error) @@ -45853,6 +47206,12 @@ type ClientWithResponsesInterface interface { // GetStocksFilingsVX13FWithResponse request GetStocksFilingsVX13FWithResponse(ctx context.Context, params *GetStocksFilingsVX13FParams, reqEditors ...RequestEditorFn) (*GetStocksFilingsVX13FResponse, error) + // GetStocksFilingsVXForm3WithResponse request + GetStocksFilingsVXForm3WithResponse(ctx context.Context, params *GetStocksFilingsVXForm3Params, reqEditors ...RequestEditorFn) (*GetStocksFilingsVXForm3Response, error) + + // GetStocksFilingsVXForm4WithResponse request + GetStocksFilingsVXForm4WithResponse(ctx context.Context, params *GetStocksFilingsVXForm4Params, reqEditors ...RequestEditorFn) (*GetStocksFilingsVXForm4Response, error) + // GetStocksFilingsVXIndexWithResponse request GetStocksFilingsVXIndexWithResponse(ctx context.Context, params *GetStocksFilingsVXIndexParams, reqEditors ...RequestEditorFn) (*GetStocksFilingsVXIndexResponse, error) @@ -47040,7 +48399,7 @@ type GetConsumerSpendingEuV1MerchantAggregatesResponse struct { Type *string `json:"type,omitempty"` // UserCountry Country of consumer's residence (ISO codes). Available countries: UK, DE, FR, ES, IT, AT. Values outside these are mapped to 'unknown'. - UserCountry *string `json:"user_country,omitempty"` + UserCountry string `json:"user_country"` } `json:"results"` // Status The status of this request's response. @@ -47116,7 +48475,7 @@ type GetConsumerSpendingEuV1MerchantHierarchyResponse struct { IndustryGroup *string `json:"industry_group,omitempty"` // ListingStatus Whether the merchant is a publicly listed company or private. Possible values: public, private. - ListingStatus *string `json:"listing_status,omitempty"` + ListingStatus string `json:"listing_status"` // LookupName Lowercase merchant tag used for joining with the merchant-aggregates endpoint name field (e.g., 'asda', 'amazon'). LookupName *string `json:"lookup_name,omitempty"` @@ -47186,13 +48545,13 @@ type GetCryptoV1ExchangesResponse struct { // Results The results for this request. Results []struct { // Id Numeric identifier for the cryptocurrency exchange or trading platform. - Id *string `json:"id,omitempty"` + Id string `json:"id"` // Name Full official name of the cryptocurrency exchange or digital asset trading platform. - Name *string `json:"name,omitempty"` + Name string `json:"name"` // Type Type of crypto venue - 'exchange' for cryptocurrency exchanges and digital asset trading platforms. - Type *string `json:"type,omitempty"` + Type string `json:"type"` // Url Official website URL of the cryptocurrency exchange. Url *string `json:"url,omitempty"` @@ -47401,7 +48760,7 @@ type GetEtfGlobalV1ConstituentsResponse struct { ConstituentName *string `json:"constituent_name,omitempty"` // ConstituentRank The rank of this constituent within the ETF for a given effective_date, ordered by weight (descending), market_value (descending), and constituent_ticker (ascending). A rank of 1 indicates the largest holding. - ConstituentRank *int64 `json:"constituent_rank,omitempty"` + ConstituentRank int64 `json:"constituent_rank"` // ConstituentTicker The stock ticker symbol of the individual security held within the ETF. ConstituentTicker *string `json:"constituent_ticker,omitempty"` @@ -47661,7 +49020,7 @@ type GetEtfGlobalV1ProfilesResponse struct { LeadMarketMaker *string `json:"lead_market_maker,omitempty"` // LeverageStyle Indicates whether the ETF uses leverage to amplify returns ('leveraged'), or does not use leverage ('unleveraged'). - LeverageStyle *string `json:"leverage_style,omitempty"` + LeverageStyle string `json:"leverage_style"` // LeveredAmount The leverage multiplier applied by the ETF, where positive numbers indicate leveraged exposure and negative numbers indicate inverse exposure. LeveredAmount *float64 `json:"levered_amount,omitempty"` @@ -47670,7 +49029,7 @@ type GetEtfGlobalV1ProfilesResponse struct { ListingExchange *string `json:"listing_exchange,omitempty"` // ManagementClassification Defines whether an ETF is considered active under SEC rules, with managers making investment decisions, or passive, tracking an index. - ManagementClassification *string `json:"management_classification,omitempty"` + ManagementClassification string `json:"management_classification"` // ManagementFee The annual fee charged by the fund manager for managing the ETF's portfolio and operations. ManagementFee *float64 `json:"management_fee,omitempty"` @@ -47706,7 +49065,7 @@ type GetEtfGlobalV1ProfilesResponse struct { ProcessedDate *openapi_types.Date `json:"processed_date,omitempty"` // ProductType Indicates whether the product is an Exchange-Traded Note ('etn') or an Exchange-Traded Fund ('etf'). - ProductType *string `json:"product_type,omitempty"` + ProductType string `json:"product_type"` // PutCallRatio Put/call ratio for options on the ETF. PutCallRatio *float64 `json:"put_call_ratio,omitempty"` @@ -47851,13 +49210,13 @@ type GetEtfGlobalV1TaxonomiesResponse struct { LeverageReset *string `json:"leverage_reset,omitempty"` // LeverageStyle Indicates whether the ETF uses leverage to amplify returns ('leveraged'), or does not use leverage ('unleveraged'). - LeverageStyle *string `json:"leverage_style,omitempty"` + LeverageStyle string `json:"leverage_style"` // LeveredAmount The leverage multiplier applied by the ETF, where positive numbers indicate leveraged exposure and negative numbers indicate inverse exposure. LeveredAmount *float64 `json:"levered_amount,omitempty"` // ManagementClassification Defines whether an ETF is considered active under SEC rules, with managers making investment decisions, or passive, tracking an index. - ManagementClassification *string `json:"management_classification,omitempty"` + ManagementClassification string `json:"management_classification"` // ManagementStyle Indicates whether an ETF is managed actively or passively, and the level of transparency or replication method used. ManagementStyle *string `json:"management_style,omitempty"` @@ -47875,7 +49234,7 @@ type GetEtfGlobalV1TaxonomiesResponse struct { ProcessedDate *openapi_types.Date `json:"processed_date,omitempty"` // ProductType Indicates whether the product is an Exchange-Traded Note ('etn') or an Exchange-Traded Fund ('etf'). - ProductType *string `json:"product_type,omitempty"` + ProductType string `json:"product_type"` // RebalanceFrequency How frequently the ETF rebalances its holdings. RebalanceFrequency *string `json:"rebalance_frequency,omitempty"` @@ -48237,13 +49596,13 @@ type GetForexV1ExchangesResponse struct { // Results The results for this request. Results []struct { // Id Numeric identifier for the forex trading venue or institution. - Id *string `json:"id,omitempty"` + Id string `json:"id"` // Name Full name of the foreign exchange trading venue, platform, or financial institution. - Name *string `json:"name,omitempty"` + Name string `json:"name"` // Type Type of forex venue - 'exchange' for electronic trading platforms and institutional trading venues. - Type *string `json:"type,omitempty"` + Type string `json:"type"` } `json:"results"` // Status The status of this request's response. @@ -48354,10 +49713,10 @@ type GetFuturesV1ContractsResponse struct { // Results The results for this request. Results []struct { // Active Whether or not a given contract was tradeable at the given point in time. Active is true when (first_trade_date <= date >= last_trade_date) and false otherwise. - Active *bool `json:"active,omitempty"` + Active bool `json:"active"` // Date A date string in the format YYYY-MM-DD. This parameter will return point-in-time information about contracts for the specified day. - Date *openapi_types.Date `json:"date,omitempty"` + Date openapi_types.Date `json:"date"` // DaysToMaturity The number of calendar days between the 'date' and the contract's final settlement date. DaysToMaturity *int64 `json:"days_to_maturity,omitempty"` @@ -48454,7 +49813,7 @@ type GetFuturesV1ExchangesResponse struct { Acronym *string `json:"acronym,omitempty"` // Id Numeric identifier for the futures exchange or trading venue. - Id *string `json:"id,omitempty"` + Id string `json:"id"` // Locale Geographic location code where the exchange operates. Locale *string `json:"locale,omitempty"` @@ -48463,13 +49822,13 @@ type GetFuturesV1ExchangesResponse struct { Mic *string `json:"mic,omitempty"` // Name Full official name of the futures exchange (e.g., 'Chicago Mercantile Exchange', 'New York Mercantile Exchange'). - Name *string `json:"name,omitempty"` + Name string `json:"name"` // OperatingMic Operating Market Identifier Code for the futures exchange. OperatingMic *string `json:"operating_mic,omitempty"` // Type Type of venue - 'exchange' for futures exchanges and derivatives trading platforms. - Type *string `json:"type,omitempty"` + Type string `json:"type"` // Url Official website URL of the futures exchange organization. Url *string `json:"url,omitempty"` @@ -48700,22 +50059,22 @@ type GetFuturesV1QuotesResponse struct { BidTimestamp *int64 `json:"bid_timestamp,omitempty"` // Channel The CME multicast channel this event was sourced from. - Channel *int32 `json:"channel,omitempty"` + Channel int32 `json:"channel"` // ReportSequence The reporting sequence number. - ReportSequence *int64 `json:"report_sequence,omitempty"` + ReportSequence int64 `json:"report_sequence"` // SequenceNumber The unique sequence number assigned to this quote by the exchange. - SequenceNumber *int64 `json:"sequence_number,omitempty"` + SequenceNumber int64 `json:"sequence_number"` // SessionEndDate Also known as the trading date, the date of the end of the trading session, in YYYY-MM-DD format. SessionEndDate *string `json:"session_end_date,omitempty"` // Ticker The futures contract identifier, including the base symbol and contract expiration (e.g., GCJ5 for the April 2025 gold contract). - Ticker *string `json:"ticker,omitempty"` + Ticker string `json:"ticker"` // Timestamp The time when the quote was generated at the exchange to nanosecond precision. - Timestamp *int64 `json:"timestamp,omitempty"` + Timestamp int64 `json:"timestamp"` } `json:"results"` // Status The status of this request's response. @@ -48815,6 +50174,148 @@ func (r GetFuturesV1SchedulesResponse) StatusCode() int { return 0 } +type GetFuturesV1SnapshotResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *struct { + // NextUrl If present, this value can be used to fetch the next page. + NextUrl *string `json:"next_url,omitempty"` + + // RequestId A request id assigned by the server. + RequestId string `json:"request_id"` + + // Results The results for this request. + Results []struct { + Details *struct { + ProductCode *string `json:"product_code,omitempty"` + + // SettlementDate The day that this contract is settled. + SettlementDate *openapi_types.Date `json:"settlement_date,omitempty"` + Ticker *string `json:"ticker,omitempty"` + } `json:"details,omitempty"` + LastMinute *struct { + // Close The price at the end of the minute bar. + Close *float64 `json:"close,omitempty"` + + // High The highest price reached in the minute bar. + High *float64 `json:"high,omitempty"` + + // LastUpdated The timestamp indicating the most recent update to the minute bar. + LastUpdated *int64 `json:"last_updated,omitempty"` + + // Low The lowest price reached in the minute bar. + Low *float64 `json:"low,omitempty"` + + // Open The opening price at the start of the minute bar. + Open *float64 `json:"open,omitempty"` + + // Timeframe The timeliness of the data as determined by your subscription. One of REAL-TIME or DELAYED. + Timeframe *string `json:"timeframe,omitempty"` + + // Volume The number of contracts traded in the minute bar. + Volume *int64 `json:"volume,omitempty"` + } `json:"last_minute,omitempty"` + LastQuote *struct { + // Ask The lowest price a seller is willing to accept. + Ask *float64 `json:"ask,omitempty"` + + // AskSize The number of contracts available at the ask price. + AskSize *int32 `json:"ask_size,omitempty"` + + // AskTimestamp The time when the best ask price was last updated. + AskTimestamp *int64 `json:"ask_timestamp,omitempty"` + + // Bid The highest price a buyer is willing to pay. + Bid *float64 `json:"bid,omitempty"` + + // BidSize The number of contracts available at the bid price. + BidSize *int32 `json:"bid_size,omitempty"` + + // BidTimestamp The time when the best bid price was last updated. + BidTimestamp *int64 `json:"bid_timestamp,omitempty"` + + // LastUpdated The time when the quote was generated at the exchange to nanosecond precision. + LastUpdated *int64 `json:"last_updated,omitempty"` + + // Timeframe The timeliness of the data as determined by your subscription. One of REAL-TIME or DELAYED. + Timeframe *string `json:"timeframe,omitempty"` + } `json:"last_quote,omitempty"` + LastTrade *struct { + // LastUpdated The time when the trade was generated at the exchange to nanosecond precision. + LastUpdated *int64 `json:"last_updated,omitempty"` + + // Price The price of the trade. This is the actual dollar value per whole contract of this trade. A trade of 100 contracts with a price of $2.00 would be worth a total dollar value of $200.00. + Price *float64 `json:"price,omitempty"` + + // Size The total number of contracts exchanged between buyers and sellers on a given trade. + Size *int64 `json:"size,omitempty"` + + // Timeframe The timeliness of the data as determined by your subscription. One of REAL-TIME or DELAYED. + Timeframe *string `json:"timeframe,omitempty"` + } `json:"last_trade,omitempty"` + Session *struct { + // Change The change in price during this session. + Change *float64 `json:"change,omitempty"` + + // ChangePercent The percentage change in price during this session. + ChangePercent *float64 `json:"change_percent,omitempty"` + + // Close The price at the end of the session. + Close *float64 `json:"close,omitempty"` + + // High The highest price reached in the session. + High *float64 `json:"high,omitempty"` + + // Low The lowest price reached in the session. + Low *float64 `json:"low,omitempty"` + + // Open The opening price at the start of the session. + Open *float64 `json:"open,omitempty"` + + // PreviousSettlement The settlement price of the previous session. + PreviousSettlement *float64 `json:"previous_settlement,omitempty"` + + // SettlementPrice The final settlement price at the end of the session. + SettlementPrice *float64 `json:"settlement_price,omitempty"` + + // Volume The number of contracts traded in the session. + Volume *int64 `json:"volume,omitempty"` + } `json:"session,omitempty"` + } `json:"results"` + + // Status The status of this request's response. + Status GetFuturesV1Snapshot200Status `json:"status"` + } + JSON400 *struct { + // Error A message describing the source of the error. + Error string `json:"error"` + + // RequestId A request id assigned by the server. + RequestId string `json:"request_id"` + + // Status The status of this request's response. + Status GetFuturesV1Snapshot400Status `json:"status"` + } +} +type GetFuturesV1Snapshot200Status string +type GetFuturesV1Snapshot400Status string + +// Status returns HTTPResponse.Status +func (r GetFuturesV1SnapshotResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetFuturesV1SnapshotResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + type GetFuturesV1TradesResponse struct { Body []byte HTTPResponse *http.Response @@ -48828,16 +50329,16 @@ type GetFuturesV1TradesResponse struct { // Results The results for this request. Results []struct { // Channel The CME multicast channel this event was sourced from. - Channel *int32 `json:"channel,omitempty"` + Channel int32 `json:"channel"` // Price The price of the trade. This is the actual dollar value per whole contract of this trade. A trade of 100 contracts with a price of $2.00 would be worth a total dollar value of $200.00. Price *float64 `json:"price,omitempty"` // ReportSequence The reporting sequence number. - ReportSequence *int64 `json:"report_sequence,omitempty"` + ReportSequence int64 `json:"report_sequence"` // SequenceNumber The unique sequence number assigned to this trade. - SequenceNumber *int64 `json:"sequence_number,omitempty"` + SequenceNumber int64 `json:"sequence_number"` // SessionEndDate Also known as the trading date, the date of the end of the trading session, in YYYY-MM-DD format. SessionEndDate *string `json:"session_end_date,omitempty"` @@ -48846,10 +50347,10 @@ type GetFuturesV1TradesResponse struct { Size *int64 `json:"size,omitempty"` // Ticker The futures contract identifier, including the base symbol and contract expiration (e.g., GCJ5 for the April 2025 gold contract). - Ticker *string `json:"ticker,omitempty"` + Ticker string `json:"ticker"` // Timestamp The time when the trade was generated at the exchange to nanosecond precision. - Timestamp *int64 `json:"timestamp,omitempty"` + Timestamp int64 `json:"timestamp"` } `json:"results"` // Status The status of this request's response. @@ -48960,10 +50461,10 @@ type GetFuturesVXContractsResponse struct { // Results The results for this request. Results []struct { // Active Whether or not a given contract was tradeable at the given point in time. Active is true when (first_trade_date <= date >= last_trade_date) and false otherwise. - Active *bool `json:"active,omitempty"` + Active bool `json:"active"` // Date A date string in the format YYYY-MM-DD. This parameter will return point-in-time information about contracts for the specified day. - Date *openapi_types.Date `json:"date,omitempty"` + Date openapi_types.Date `json:"date"` // DaysToMaturity The number of calendar days between the 'date' and the contract's final settlement date. DaysToMaturity *int64 `json:"days_to_maturity,omitempty"` @@ -49060,7 +50561,7 @@ type GetFuturesVXExchangesResponse struct { Acronym *string `json:"acronym,omitempty"` // Id Numeric identifier for the futures exchange or trading venue. - Id *string `json:"id,omitempty"` + Id string `json:"id"` // Locale Geographic location code where the exchange operates. Locale *string `json:"locale,omitempty"` @@ -49069,13 +50570,13 @@ type GetFuturesVXExchangesResponse struct { Mic *string `json:"mic,omitempty"` // Name Full official name of the futures exchange (e.g., 'Chicago Mercantile Exchange', 'New York Mercantile Exchange'). - Name *string `json:"name,omitempty"` + Name string `json:"name"` // OperatingMic Operating Market Identifier Code for the futures exchange. OperatingMic *string `json:"operating_mic,omitempty"` // Type Type of venue - 'exchange' for futures exchanges and derivatives trading platforms. - Type *string `json:"type,omitempty"` + Type string `json:"type"` // Url Official website URL of the futures exchange organization. Url *string `json:"url,omitempty"` @@ -49306,22 +50807,22 @@ type GetFuturesVXQuotesResponse struct { BidTimestamp *int64 `json:"bid_timestamp,omitempty"` // Channel The CME multicast channel this event was sourced from. - Channel *int32 `json:"channel,omitempty"` + Channel int32 `json:"channel"` // ReportSequence The reporting sequence number. - ReportSequence *int64 `json:"report_sequence,omitempty"` + ReportSequence int64 `json:"report_sequence"` // SequenceNumber The unique sequence number assigned to this quote by the exchange. - SequenceNumber *int64 `json:"sequence_number,omitempty"` + SequenceNumber int64 `json:"sequence_number"` // SessionEndDate Also known as the trading date, the date of the end of the trading session, in YYYY-MM-DD format. SessionEndDate *string `json:"session_end_date,omitempty"` // Ticker The futures contract identifier, including the base symbol and contract expiration (e.g., GCJ5 for the April 2025 gold contract). - Ticker *string `json:"ticker,omitempty"` + Ticker string `json:"ticker"` // Timestamp The time when the quote was generated at the exchange to nanosecond precision. - Timestamp *int64 `json:"timestamp,omitempty"` + Timestamp int64 `json:"timestamp"` } `json:"results"` // Status The status of this request's response. @@ -49460,7 +50961,7 @@ type GetFuturesVXSnapshotResponse struct { Timeframe *string `json:"timeframe,omitempty"` // Volume The number of contracts traded in the minute bar. - Volume *float64 `json:"volume,omitempty"` + Volume *int64 `json:"volume,omitempty"` } `json:"last_minute,omitempty"` LastQuote *struct { // Ask The lowest price a seller is willing to accept. @@ -49526,7 +51027,7 @@ type GetFuturesVXSnapshotResponse struct { SettlementPrice *float64 `json:"settlement_price,omitempty"` // Volume The number of contracts traded in the session. - Volume *float64 `json:"volume,omitempty"` + Volume *int64 `json:"volume,omitempty"` } `json:"session,omitempty"` } `json:"results"` @@ -49576,16 +51077,16 @@ type GetFuturesVXTradesResponse struct { // Results The results for this request. Results []struct { // Channel The CME multicast channel this event was sourced from. - Channel *int32 `json:"channel,omitempty"` + Channel int32 `json:"channel"` // Price The price of the trade. This is the actual dollar value per whole contract of this trade. A trade of 100 contracts with a price of $2.00 would be worth a total dollar value of $200.00. Price *float64 `json:"price,omitempty"` // ReportSequence The reporting sequence number. - ReportSequence *int64 `json:"report_sequence,omitempty"` + ReportSequence int64 `json:"report_sequence"` // SequenceNumber The unique sequence number assigned to this trade. - SequenceNumber *int64 `json:"sequence_number,omitempty"` + SequenceNumber int64 `json:"sequence_number"` // SessionEndDate Also known as the trading date, the date of the end of the trading session, in YYYY-MM-DD format. SessionEndDate *string `json:"session_end_date,omitempty"` @@ -49594,10 +51095,10 @@ type GetFuturesVXTradesResponse struct { Size *int64 `json:"size,omitempty"` // Ticker The futures contract identifier, including the base symbol and contract expiration (e.g., GCJ5 for the April 2025 gold contract). - Ticker *string `json:"ticker,omitempty"` + Ticker string `json:"ticker"` // Timestamp The time when the trade was generated at the exchange to nanosecond precision. - Timestamp *int64 `json:"timestamp,omitempty"` + Timestamp int64 `json:"timestamp"` } `json:"results"` // Status The status of this request's response. @@ -49649,7 +51150,7 @@ type GetOptionsV1ExchangesResponse struct { Acronym *string `json:"acronym,omitempty"` // Id Numeric identifier for the options trading venue or exchange. - Id *string `json:"id,omitempty"` + Id string `json:"id"` // Locale Geographic location code. Locale *string `json:"locale,omitempty"` @@ -49658,7 +51159,7 @@ type GetOptionsV1ExchangesResponse struct { Mic *string `json:"mic,omitempty"` // Name Full official name of the options exchange or trading venue. - Name *string `json:"name,omitempty"` + Name string `json:"name"` // OperatingMic Operating Market Identifier Code - identifies the parent organization or operating entity. OperatingMic *string `json:"operating_mic,omitempty"` @@ -49667,7 +51168,7 @@ type GetOptionsV1ExchangesResponse struct { ParticipantId *string `json:"participant_id,omitempty"` // Type Type of venue: 'exchange' for options exchanges, 'SIP' for Securities Information Processors like OPRA (Options Price Reporting Authority). - Type *string `json:"type,omitempty"` + Type string `json:"type"` // Url Official website URL of the organization operating the options exchange. Url *string `json:"url,omitempty"` @@ -49900,9 +51401,6 @@ type GetStocksFilingsVX13FResponse struct { // SharesOrPrincipalType Type of amount reported. Possible values: SH (shares), PRN (principal amount). SharesOrPrincipalType *string `json:"shares_or_principal_type,omitempty"` - // Tickers A list of ticker symbols for the filing entity. Multiple symbols may indicate different share classes (e.g., BRK.A and BRK.B for Berkshire Hathaway). - Tickers *[]string `json:"tickers,omitempty"` - // TitleOfClass Description of the class of securities held (e.g., 'COM', 'CL A'). TitleOfClass *string `json:"title_of_class,omitempty"` @@ -49949,6 +51447,311 @@ func (r GetStocksFilingsVX13FResponse) StatusCode() int { return 0 } +type GetStocksFilingsVXForm3Response struct { + Body []byte + HTTPResponse *http.Response + JSON200 *struct { + // NextUrl If present, this value can be used to fetch the next page. + NextUrl *string `json:"next_url,omitempty"` + + // RequestId A request id assigned by the server. + RequestId string `json:"request_id"` + + // Results The results for this request. + Results []struct { + // AccessionNumber Unique SEC accession number for the filing (e.g., '0001209191-25-012345'). + AccessionNumber *string `json:"accession_number,omitempty"` + + // Aff10b5One Whether the transaction was made pursuant to a Rule 10b5-1 trading plan. + Aff10b5One *bool `json:"aff_10b5_one,omitempty"` + + // DateOfOriginalSubmission Date of the original filing submission for amendment filings (3/A). Null for initial filings (formatted as YYYY-MM-DD). + DateOfOriginalSubmission *openapi_types.Date `json:"date_of_original_submission,omitempty"` + + // DirectOrIndirect Whether ownership is direct ('D') or indirect ('I'). + DirectOrIndirect *string `json:"direct_or_indirect,omitempty"` + + // ExerciseDate Date exercisable for derivative securities (formatted as YYYY-MM-DD). + ExerciseDate *openapi_types.Date `json:"exercise_date,omitempty"` + + // ExercisePrice Exercise or conversion price of derivative securities in USD. + ExercisePrice *float64 `json:"exercise_price,omitempty"` + + // FilingDate Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD). + FilingDate *openapi_types.Date `json:"filing_date,omitempty"` + + // FilingUrl Direct URL to the filing on the SEC EDGAR website. + FilingUrl *string `json:"filing_url,omitempty"` + + // Footnotes List of footnotes from the filing that are relevant to this row, each with an id and description. + Footnotes *[]struct { + Description *string `json:"description,omitempty"` + Id *string `json:"id,omitempty"` + } `json:"footnotes,omitempty"` + + // FormType SEC form type ('3' for initial filing, '3/A' for amendments). + FormType *string `json:"form_type,omitempty"` + + // IsDirector Whether the reporting owner is a director of the issuer. + IsDirector *bool `json:"is_director,omitempty"` + + // IsOfficer Whether the reporting owner is an officer of the issuer. + IsOfficer *bool `json:"is_officer,omitempty"` + + // IsOther Whether the reporting owner has another relationship with the issuer. + IsOther *bool `json:"is_other,omitempty"` + + // IsTenPercentOwner Whether the reporting owner holds 10% or more of a class of equity securities. + IsTenPercentOwner *bool `json:"is_ten_percent_owner,omitempty"` + + // IssuerCik SEC Central Index Key of the issuer company (10 digits, zero-padded). + IssuerCik *string `json:"issuer_cik,omitempty"` + + // IssuerName Name of the issuer company as reported in the filing. + IssuerName *string `json:"issuer_name,omitempty"` + + // NatureOfOwnership Nature of indirect ownership (e.g., 'By Trust', 'By Spouse'). + NatureOfOwnership *string `json:"nature_of_ownership,omitempty"` + + // NotSubjectToSection16 Whether the reporting owner is not subject to Section 16 of the Securities Exchange Act. + NotSubjectToSection16 *bool `json:"not_subject_to_section_16,omitempty"` + + // OfficerTitle Title of the officer, if the reporting owner is an officer. + OfficerTitle *string `json:"officer_title,omitempty"` + + // OwnerCik SEC Central Index Key of the reporting owner (10 digits, zero-padded). + OwnerCik *string `json:"owner_cik,omitempty"` + + // OwnerName Name of the reporting owner (individual or entity). + OwnerName *string `json:"owner_name,omitempty"` + + // PeriodOfReport Date of the event triggering the filing (formatted as YYYY-MM-DD). + PeriodOfReport *openapi_types.Date `json:"period_of_report,omitempty"` + + // Remarks Additional remarks included in the filing. + Remarks *string `json:"remarks,omitempty"` + + // SecurityTitle Title or description of the security (e.g., 'Common Stock', 'Stock Option'). + SecurityTitle *string `json:"security_title,omitempty"` + + // SecurityType Type of security ('non-derivative' or 'derivative'). + SecurityType *string `json:"security_type,omitempty"` + + // SharesOwned Number of shares beneficially owned. + SharesOwned *float64 `json:"shares_owned,omitempty"` + + // Tickers A list of ticker symbols for the issuer company. Multiple symbols may indicate different share classes. + Tickers *[]string `json:"tickers,omitempty"` + + // UnderlyingSecurityShares Number of underlying shares for derivative holdings. + UnderlyingSecurityShares *float64 `json:"underlying_security_shares,omitempty"` + + // UnderlyingSecurityTitle Title of the underlying security for derivative holdings. + UnderlyingSecurityTitle *string `json:"underlying_security_title,omitempty"` + } `json:"results"` + + // Status The status of this request's response. + Status GetStocksFilingsVXForm3200Status `json:"status"` + } + JSON400 *struct { + // Error A message describing the source of the error. + Error string `json:"error"` + + // RequestId A request id assigned by the server. + RequestId string `json:"request_id"` + + // Status The status of this request's response. + Status GetStocksFilingsVXForm3400Status `json:"status"` + } +} +type GetStocksFilingsVXForm3200Status string +type GetStocksFilingsVXForm3400Status string + +// Status returns HTTPResponse.Status +func (r GetStocksFilingsVXForm3Response) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetStocksFilingsVXForm3Response) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type GetStocksFilingsVXForm4Response struct { + Body []byte + HTTPResponse *http.Response + JSON200 *struct { + // NextUrl If present, this value can be used to fetch the next page. + NextUrl *string `json:"next_url,omitempty"` + + // RequestId A request id assigned by the server. + RequestId string `json:"request_id"` + + // Results The results for this request. + Results []struct { + // AccessionNumber Unique SEC accession number for the filing (e.g., '0001209191-25-012345'). + AccessionNumber *string `json:"accession_number,omitempty"` + + // Aff10b5One Whether the transaction was made pursuant to a Rule 10b5-1 trading plan. + Aff10b5One *bool `json:"aff_10b5_one,omitempty"` + + // DateOfOriginalSubmission Date of the original filing submission for amendment filings (4/A). Null for standard filings (formatted as YYYY-MM-DD). + DateOfOriginalSubmission *openapi_types.Date `json:"date_of_original_submission,omitempty"` + + // DeemedExecutionDate Deemed execution date if different from transaction date (formatted as YYYY-MM-DD). + DeemedExecutionDate *openapi_types.Date `json:"deemed_execution_date,omitempty"` + + // DirectOrIndirect Whether ownership is direct ('D') or indirect ('I'). + DirectOrIndirect *string `json:"direct_or_indirect,omitempty"` + + // EquitySwapInvolved Whether an equity swap was involved in the transaction. + EquitySwapInvolved *bool `json:"equity_swap_involved,omitempty"` + + // ExerciseDate Date exercisable for derivative securities (formatted as YYYY-MM-DD). + ExerciseDate *openapi_types.Date `json:"exercise_date,omitempty"` + + // ExercisePrice Exercise or conversion price of derivative securities in USD. + ExercisePrice *float64 `json:"exercise_price,omitempty"` + + // ExpirationDate Expiration date for derivative securities (formatted as YYYY-MM-DD). + ExpirationDate *openapi_types.Date `json:"expiration_date,omitempty"` + + // FilingDate Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD). + FilingDate *openapi_types.Date `json:"filing_date,omitempty"` + + // FilingUrl Direct URL to the filing on the SEC EDGAR website. + FilingUrl *string `json:"filing_url,omitempty"` + + // Footnotes List of footnotes from the filing that are relevant to this row, each with an id and description. + Footnotes *[]struct { + Description *string `json:"description,omitempty"` + Id *string `json:"id,omitempty"` + } `json:"footnotes,omitempty"` + + // FormType SEC form type ('4' for standard filing, '4/A' for amendments). + FormType *string `json:"form_type,omitempty"` + + // IsDirector Whether the reporting owner is a director of the issuer. + IsDirector *bool `json:"is_director,omitempty"` + + // IsOfficer Whether the reporting owner is an officer of the issuer. + IsOfficer *bool `json:"is_officer,omitempty"` + + // IsOther Whether the reporting owner has another relationship with the issuer. + IsOther *bool `json:"is_other,omitempty"` + + // IsTenPercentOwner Whether the reporting owner holds 10% or more of a class of equity securities. + IsTenPercentOwner *bool `json:"is_ten_percent_owner,omitempty"` + + // IssuerCik SEC Central Index Key of the issuer company (10 digits, zero-padded). + IssuerCik *string `json:"issuer_cik,omitempty"` + + // IssuerName Name of the issuer company as reported in the filing. + IssuerName *string `json:"issuer_name,omitempty"` + + // NatureOfOwnership Nature of indirect ownership (e.g., 'By Trust', 'By Spouse'). + NatureOfOwnership *string `json:"nature_of_ownership,omitempty"` + + // NotSubjectToSection16 Whether the reporting owner is not subject to Section 16 of the Securities Exchange Act. + NotSubjectToSection16 *bool `json:"not_subject_to_section_16,omitempty"` + + // OfficerTitle Title of the officer, if the reporting owner is an officer. + OfficerTitle *string `json:"officer_title,omitempty"` + + // OwnerCik SEC Central Index Key of the reporting owner (10 digits, zero-padded). + OwnerCik *string `json:"owner_cik,omitempty"` + + // OwnerName Name of the reporting owner (individual or entity). + OwnerName *string `json:"owner_name,omitempty"` + + // PeriodOfReport Date of the event triggering the filing (formatted as YYYY-MM-DD). + PeriodOfReport *openapi_types.Date `json:"period_of_report,omitempty"` + + // RecordType Type of record in the filing (e.g., 'transaction', 'holding'). + RecordType *string `json:"record_type,omitempty"` + + // Remarks Additional remarks included in the filing. + Remarks *string `json:"remarks,omitempty"` + + // SecurityTitle Title or description of the security (e.g., 'Common Stock', 'Stock Option'). + SecurityTitle *string `json:"security_title,omitempty"` + + // SecurityType Type of security ('non-derivative' or 'derivative'). + SecurityType *string `json:"security_type,omitempty"` + + // SharesOwnedFollowingTransaction Total shares beneficially owned after the transaction. + SharesOwnedFollowingTransaction *float64 `json:"shares_owned_following_transaction,omitempty"` + + // Tickers A list of ticker symbols for the issuer company. Multiple symbols may indicate different share classes. + Tickers *[]string `json:"tickers,omitempty"` + + // TransactionAcquiredDisposed Whether shares were acquired ('A') or disposed of ('D'). + TransactionAcquiredDisposed *string `json:"transaction_acquired_disposed,omitempty"` + + // TransactionCode SEC transaction code indicating the type of transaction (e.g., 'P' for purchase, 'S' for sale, 'A' for grant/award, 'M' for exercise/conversion). + TransactionCode *string `json:"transaction_code,omitempty"` + + // TransactionDate Date of the transaction (formatted as YYYY-MM-DD). + TransactionDate *openapi_types.Date `json:"transaction_date,omitempty"` + + // TransactionPricePerShare Price per share of the transaction in USD. + TransactionPricePerShare *float64 `json:"transaction_price_per_share,omitempty"` + + // TransactionShares Number of shares involved in the transaction. + TransactionShares *float64 `json:"transaction_shares,omitempty"` + + // TransactionTimeliness Timeliness of the filing: 'O' (on time) or 'L' (late). + TransactionTimeliness *string `json:"transaction_timeliness,omitempty"` + + // TransactionValue Total value of the transaction in USD (transaction_shares x transaction_price_per_share). Null when shares or price is not reported. + TransactionValue *float64 `json:"transaction_value,omitempty"` + + // UnderlyingSecurityShares Number of underlying shares for derivative transactions. + UnderlyingSecurityShares *float64 `json:"underlying_security_shares,omitempty"` + + // UnderlyingSecurityTitle Title of the underlying security for derivative transactions. + UnderlyingSecurityTitle *string `json:"underlying_security_title,omitempty"` + } `json:"results"` + + // Status The status of this request's response. + Status GetStocksFilingsVXForm4200Status `json:"status"` + } + JSON400 *struct { + // Error A message describing the source of the error. + Error string `json:"error"` + + // RequestId A request id assigned by the server. + RequestId string `json:"request_id"` + + // Status The status of this request's response. + Status GetStocksFilingsVXForm4400Status `json:"status"` + } +} +type GetStocksFilingsVXForm4200Status string +type GetStocksFilingsVXForm4400Status string + +// Status returns HTTPResponse.Status +func (r GetStocksFilingsVXForm4Response) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetStocksFilingsVXForm4Response) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + type GetStocksFilingsVXIndexResponse struct { Body []byte HTTPResponse *http.Response @@ -50183,7 +51986,7 @@ type GetStocksFinancialsV1BalanceSheetsResponse struct { Tickers *[]string `json:"tickers,omitempty"` // Timeframe The reporting period type. Possible values include: quarterly, annual. - Timeframe *string `json:"timeframe,omitempty"` + Timeframe string `json:"timeframe"` // TotalAssets Sum of all current and non-current assets representing everything the company owns or controls. TotalAssets *float64 `json:"total_assets,omitempty"` @@ -50558,7 +52361,7 @@ type GetStocksFinancialsV1RatiosResponse struct { Current *float64 `json:"current,omitempty"` // Date Date for which the ratios are calculated, representing the trading date with available price data. - Date *string `json:"date,omitempty"` + Date string `json:"date"` // DebtToEquity Debt-to-equity ratio, calculated as total debt (current debt plus long-term debt) divided by total shareholders' equity, measuring financial leverage. DebtToEquity *float64 `json:"debt_to_equity,omitempty"` @@ -50612,7 +52415,7 @@ type GetStocksFinancialsV1RatiosResponse struct { ReturnOnEquity *float64 `json:"return_on_equity,omitempty"` // Ticker Stock ticker symbol for the company. - Ticker *string `json:"ticker,omitempty"` + Ticker string `json:"ticker"` } `json:"results"` // Status The status of this request's response. @@ -50670,7 +52473,7 @@ type GetStocksTaxonomiesVXRiskFactorsResponse struct { SecondaryCategory *string `json:"secondary_category,omitempty"` // Taxonomy Version identifier (e.g., '1.0', '1.1') for the taxonomy - Taxonomy *float64 `json:"taxonomy,omitempty"` + Taxonomy float64 `json:"taxonomy"` // TertiaryCategory Most specific risk classification TertiaryCategory *string `json:"tertiary_category,omitempty"` @@ -50731,7 +52534,7 @@ type GetStocksV1DividendsResponse struct { DeclarationDate *openapi_types.Date `json:"declaration_date,omitempty"` // DistributionType Classification describing the nature of this dividend's recurrence pattern: recurring (paid on a regular schedule), special (one-time or commemorative), supplemental (extra beyond the regular schedule), irregular (unpredictable or non-recurring), unknown (cannot be classified from available data) - DistributionType *string `json:"distribution_type,omitempty"` + DistributionType string `json:"distribution_type"` // ExDividendDate Date when the stock begins trading without the dividend value ExDividendDate *openapi_types.Date `json:"ex_dividend_date,omitempty"` @@ -50807,7 +52610,7 @@ type GetStocksV1ExchangesResponse struct { Acronym *string `json:"acronym,omitempty"` // Id Numeric identifier for the trading venue or exchange. - Id *string `json:"id,omitempty"` + Id string `json:"id"` // Locale Geographic location code. Locale *string `json:"locale,omitempty"` @@ -50816,7 +52619,7 @@ type GetStocksV1ExchangesResponse struct { Mic *string `json:"mic,omitempty"` // Name Full official name of the exchange, trading venue, or reporting facility. - Name *string `json:"name,omitempty"` + Name string `json:"name"` // OperatingMic Operating Market Identifier Code - identifies the specific operating entity or parent organization. OperatingMic *string `json:"operating_mic,omitempty"` @@ -50825,7 +52628,7 @@ type GetStocksV1ExchangesResponse struct { ParticipantId *string `json:"participant_id,omitempty"` // Type Type of trading venue: 'exchange' for stock exchanges, 'TRF' for Trade Reporting Facilities, 'SIP' for Securities Information Processors, 'ORF' for OTC Reporting Facility. - Type *string `json:"type,omitempty"` + Type string `json:"type"` // Url Official website URL of the organization operating the venue. Url *string `json:"url,omitempty"` @@ -50877,13 +52680,13 @@ type GetStocksV1ShortInterestResponse struct { // Results The results for this request. Results []struct { // AvgDailyVolume The average daily trading volume for the stock over a specified period, typically used to contextualize short interest. - AvgDailyVolume *int64 `json:"avg_daily_volume,omitempty"` + AvgDailyVolume int64 `json:"avg_daily_volume"` // DaysToCover Calculated as short_interest divided by avg_daily_volume, representing the estimated number of days it would take to cover all short positions based on average trading volume. - DaysToCover *float64 `json:"days_to_cover,omitempty"` + DaysToCover float64 `json:"days_to_cover"` // SettlementDate The date (formatted as YYYY-MM-DD) on which the short interest data is considered settled, typically based on exchange reporting schedules. - SettlementDate *string `json:"settlement_date,omitempty"` + SettlementDate string `json:"settlement_date"` // ShortInterest The total number of shares that have been sold short but have not yet been covered or closed out. ShortInterest *int64 `json:"short_interest,omitempty"` @@ -50944,7 +52747,7 @@ type GetStocksV1ShortVolumeResponse struct { AdfShortVolumeExempt *int64 `json:"adf_short_volume_exempt,omitempty"` // Date The date of trade activity reported in the format YYYY-MM-DD - Date *string `json:"date,omitempty"` + Date string `json:"date"` // ExemptVolume Portion of short volume that was marked as exempt from regulation SHO. ExemptVolume *float64 `json:"exempt_volume,omitempty"` @@ -51029,7 +52832,7 @@ type GetStocksV1SplitsResponse struct { // Results The results for this request. Results []struct { // AdjustmentType Classification of the share-change event. Possible values include: forward_split (share count increases), reverse_split (share count decreases), stock_dividend (shares issued as a dividend) - AdjustmentType *string `json:"adjustment_type,omitempty"` + AdjustmentType string `json:"adjustment_type"` // ExecutionDate Date when the stock split was applied and shares adjusted ExecutionDate *openapi_types.Date `json:"execution_date,omitempty"` @@ -58487,6 +60290,9 @@ type GetCryptoTradesResponse struct { // Price The price of the trade in the base currency of the crypto pair. Price float64 `json:"price"` + // ReceivedTimestamp The nanosecond accuracy timestamp of when the tick was received by Massive. + ReceivedTimestamp *int64 `json:"received_timestamp,omitempty"` + // Size The size of a trade (also known as volume). Size float64 `json:"size"` } `json:"results,omitempty"` @@ -58541,6 +60347,9 @@ type GetOptionsTradesResponse struct { // total dollar value of $200.00. Price float64 `json:"price"` + // SequenceNumber The sequence number represents the sequence in which message events happened. These are increasing and unique per ticker symbol, but will not always be consecutive (e.g. 1, 2, 6, 9, 10, 11). + SequenceNumber *int64 `json:"sequence_number,omitempty"` + // SipTimestamp The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this trade from the exchange which produced it. SipTimestamp int64 `json:"sip_timestamp"` @@ -59192,6 +61001,15 @@ func (c *ClientWithResponses) GetFuturesV1SchedulesWithResponse(ctx context.Cont return ParseGetFuturesV1SchedulesResponse(rsp) } +// GetFuturesV1SnapshotWithResponse request returning *GetFuturesV1SnapshotResponse +func (c *ClientWithResponses) GetFuturesV1SnapshotWithResponse(ctx context.Context, params *GetFuturesV1SnapshotParams, reqEditors ...RequestEditorFn) (*GetFuturesV1SnapshotResponse, error) { + rsp, err := c.GetFuturesV1Snapshot(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetFuturesV1SnapshotResponse(rsp) +} + // GetFuturesV1TradesWithResponse request returning *GetFuturesV1TradesResponse func (c *ClientWithResponses) GetFuturesV1TradesWithResponse(ctx context.Context, ticker string, params *GetFuturesV1TradesParams, reqEditors ...RequestEditorFn) (*GetFuturesV1TradesResponse, error) { rsp, err := c.GetFuturesV1Trades(ctx, ticker, params, reqEditors...) @@ -59318,6 +61136,24 @@ func (c *ClientWithResponses) GetStocksFilingsVX13FWithResponse(ctx context.Cont return ParseGetStocksFilingsVX13FResponse(rsp) } +// GetStocksFilingsVXForm3WithResponse request returning *GetStocksFilingsVXForm3Response +func (c *ClientWithResponses) GetStocksFilingsVXForm3WithResponse(ctx context.Context, params *GetStocksFilingsVXForm3Params, reqEditors ...RequestEditorFn) (*GetStocksFilingsVXForm3Response, error) { + rsp, err := c.GetStocksFilingsVXForm3(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetStocksFilingsVXForm3Response(rsp) +} + +// GetStocksFilingsVXForm4WithResponse request returning *GetStocksFilingsVXForm4Response +func (c *ClientWithResponses) GetStocksFilingsVXForm4WithResponse(ctx context.Context, params *GetStocksFilingsVXForm4Params, reqEditors ...RequestEditorFn) (*GetStocksFilingsVXForm4Response, error) { + rsp, err := c.GetStocksFilingsVXForm4(ctx, params, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetStocksFilingsVXForm4Response(rsp) +} + // GetStocksFilingsVXIndexWithResponse request returning *GetStocksFilingsVXIndexResponse func (c *ClientWithResponses) GetStocksFilingsVXIndexWithResponse(ctx context.Context, params *GetStocksFilingsVXIndexParams, reqEditors ...RequestEditorFn) (*GetStocksFilingsVXIndexResponse, error) { rsp, err := c.GetStocksFilingsVXIndex(ctx, params, reqEditors...) @@ -61182,7 +63018,7 @@ func ParseGetConsumerSpendingEuV1MerchantAggregatesResponse(rsp *http.Response) Type *string `json:"type,omitempty"` // UserCountry Country of consumer's residence (ISO codes). Available countries: UK, DE, FR, ES, IT, AT. Values outside these are mapped to 'unknown'. - UserCountry *string `json:"user_country,omitempty"` + UserCountry string `json:"user_country"` } `json:"results"` // Status The status of this request's response. @@ -61266,7 +63102,7 @@ func ParseGetConsumerSpendingEuV1MerchantHierarchyResponse(rsp *http.Response) ( IndustryGroup *string `json:"industry_group,omitempty"` // ListingStatus Whether the merchant is a publicly listed company or private. Possible values: public, private. - ListingStatus *string `json:"listing_status,omitempty"` + ListingStatus string `json:"listing_status"` // LookupName Lowercase merchant tag used for joining with the merchant-aggregates endpoint name field (e.g., 'asda', 'amazon'). LookupName *string `json:"lookup_name,omitempty"` @@ -61344,13 +63180,13 @@ func ParseGetCryptoV1ExchangesResponse(rsp *http.Response) (*GetCryptoV1Exchange // Results The results for this request. Results []struct { // Id Numeric identifier for the cryptocurrency exchange or trading platform. - Id *string `json:"id,omitempty"` + Id string `json:"id"` // Name Full official name of the cryptocurrency exchange or digital asset trading platform. - Name *string `json:"name,omitempty"` + Name string `json:"name"` // Type Type of crypto venue - 'exchange' for cryptocurrency exchanges and digital asset trading platforms. - Type *string `json:"type,omitempty"` + Type string `json:"type"` // Url Official website URL of the cryptocurrency exchange. Url *string `json:"url,omitempty"` @@ -61575,7 +63411,7 @@ func ParseGetEtfGlobalV1ConstituentsResponse(rsp *http.Response) (*GetEtfGlobalV ConstituentName *string `json:"constituent_name,omitempty"` // ConstituentRank The rank of this constituent within the ETF for a given effective_date, ordered by weight (descending), market_value (descending), and constituent_ticker (ascending). A rank of 1 indicates the largest holding. - ConstituentRank *int64 `json:"constituent_rank,omitempty"` + ConstituentRank int64 `json:"constituent_rank"` // ConstituentTicker The stock ticker symbol of the individual security held within the ETF. ConstituentTicker *string `json:"constituent_ticker,omitempty"` @@ -61851,7 +63687,7 @@ func ParseGetEtfGlobalV1ProfilesResponse(rsp *http.Response) (*GetEtfGlobalV1Pro LeadMarketMaker *string `json:"lead_market_maker,omitempty"` // LeverageStyle Indicates whether the ETF uses leverage to amplify returns ('leveraged'), or does not use leverage ('unleveraged'). - LeverageStyle *string `json:"leverage_style,omitempty"` + LeverageStyle string `json:"leverage_style"` // LeveredAmount The leverage multiplier applied by the ETF, where positive numbers indicate leveraged exposure and negative numbers indicate inverse exposure. LeveredAmount *float64 `json:"levered_amount,omitempty"` @@ -61860,7 +63696,7 @@ func ParseGetEtfGlobalV1ProfilesResponse(rsp *http.Response) (*GetEtfGlobalV1Pro ListingExchange *string `json:"listing_exchange,omitempty"` // ManagementClassification Defines whether an ETF is considered active under SEC rules, with managers making investment decisions, or passive, tracking an index. - ManagementClassification *string `json:"management_classification,omitempty"` + ManagementClassification string `json:"management_classification"` // ManagementFee The annual fee charged by the fund manager for managing the ETF's portfolio and operations. ManagementFee *float64 `json:"management_fee,omitempty"` @@ -61896,7 +63732,7 @@ func ParseGetEtfGlobalV1ProfilesResponse(rsp *http.Response) (*GetEtfGlobalV1Pro ProcessedDate *openapi_types.Date `json:"processed_date,omitempty"` // ProductType Indicates whether the product is an Exchange-Traded Note ('etn') or an Exchange-Traded Fund ('etf'). - ProductType *string `json:"product_type,omitempty"` + ProductType string `json:"product_type"` // PutCallRatio Put/call ratio for options on the ETF. PutCallRatio *float64 `json:"put_call_ratio,omitempty"` @@ -62049,13 +63885,13 @@ func ParseGetEtfGlobalV1TaxonomiesResponse(rsp *http.Response) (*GetEtfGlobalV1T LeverageReset *string `json:"leverage_reset,omitempty"` // LeverageStyle Indicates whether the ETF uses leverage to amplify returns ('leveraged'), or does not use leverage ('unleveraged'). - LeverageStyle *string `json:"leverage_style,omitempty"` + LeverageStyle string `json:"leverage_style"` // LeveredAmount The leverage multiplier applied by the ETF, where positive numbers indicate leveraged exposure and negative numbers indicate inverse exposure. LeveredAmount *float64 `json:"levered_amount,omitempty"` // ManagementClassification Defines whether an ETF is considered active under SEC rules, with managers making investment decisions, or passive, tracking an index. - ManagementClassification *string `json:"management_classification,omitempty"` + ManagementClassification string `json:"management_classification"` // ManagementStyle Indicates whether an ETF is managed actively or passively, and the level of transparency or replication method used. ManagementStyle *string `json:"management_style,omitempty"` @@ -62073,7 +63909,7 @@ func ParseGetEtfGlobalV1TaxonomiesResponse(rsp *http.Response) (*GetEtfGlobalV1T ProcessedDate *openapi_types.Date `json:"processed_date,omitempty"` // ProductType Indicates whether the product is an Exchange-Traded Note ('etn') or an Exchange-Traded Fund ('etf'). - ProductType *string `json:"product_type,omitempty"` + ProductType string `json:"product_type"` // RebalanceFrequency How frequently the ETF rebalances its holdings. RebalanceFrequency *string `json:"rebalance_frequency,omitempty"` @@ -62475,13 +64311,13 @@ func ParseGetForexV1ExchangesResponse(rsp *http.Response) (*GetForexV1ExchangesR // Results The results for this request. Results []struct { // Id Numeric identifier for the forex trading venue or institution. - Id *string `json:"id,omitempty"` + Id string `json:"id"` // Name Full name of the foreign exchange trading venue, platform, or financial institution. - Name *string `json:"name,omitempty"` + Name string `json:"name"` // Type Type of forex venue - 'exchange' for electronic trading platforms and institutional trading venues. - Type *string `json:"type,omitempty"` + Type string `json:"type"` } `json:"results"` // Status The status of this request's response. @@ -62604,10 +64440,10 @@ func ParseGetFuturesV1ContractsResponse(rsp *http.Response) (*GetFuturesV1Contra // Results The results for this request. Results []struct { // Active Whether or not a given contract was tradeable at the given point in time. Active is true when (first_trade_date <= date >= last_trade_date) and false otherwise. - Active *bool `json:"active,omitempty"` + Active bool `json:"active"` // Date A date string in the format YYYY-MM-DD. This parameter will return point-in-time information about contracts for the specified day. - Date *openapi_types.Date `json:"date,omitempty"` + Date openapi_types.Date `json:"date"` // DaysToMaturity The number of calendar days between the 'date' and the contract's final settlement date. DaysToMaturity *int64 `json:"days_to_maturity,omitempty"` @@ -62712,7 +64548,7 @@ func ParseGetFuturesV1ExchangesResponse(rsp *http.Response) (*GetFuturesV1Exchan Acronym *string `json:"acronym,omitempty"` // Id Numeric identifier for the futures exchange or trading venue. - Id *string `json:"id,omitempty"` + Id string `json:"id"` // Locale Geographic location code where the exchange operates. Locale *string `json:"locale,omitempty"` @@ -62721,13 +64557,13 @@ func ParseGetFuturesV1ExchangesResponse(rsp *http.Response) (*GetFuturesV1Exchan Mic *string `json:"mic,omitempty"` // Name Full official name of the futures exchange (e.g., 'Chicago Mercantile Exchange', 'New York Mercantile Exchange'). - Name *string `json:"name,omitempty"` + Name string `json:"name"` // OperatingMic Operating Market Identifier Code for the futures exchange. OperatingMic *string `json:"operating_mic,omitempty"` // Type Type of venue - 'exchange' for futures exchanges and derivatives trading platforms. - Type *string `json:"type,omitempty"` + Type string `json:"type"` // Url Official website URL of the futures exchange organization. Url *string `json:"url,omitempty"` @@ -62982,22 +64818,22 @@ func ParseGetFuturesV1QuotesResponse(rsp *http.Response) (*GetFuturesV1QuotesRes BidTimestamp *int64 `json:"bid_timestamp,omitempty"` // Channel The CME multicast channel this event was sourced from. - Channel *int32 `json:"channel,omitempty"` + Channel int32 `json:"channel"` // ReportSequence The reporting sequence number. - ReportSequence *int64 `json:"report_sequence,omitempty"` + ReportSequence int64 `json:"report_sequence"` // SequenceNumber The unique sequence number assigned to this quote by the exchange. - SequenceNumber *int64 `json:"sequence_number,omitempty"` + SequenceNumber int64 `json:"sequence_number"` // SessionEndDate Also known as the trading date, the date of the end of the trading session, in YYYY-MM-DD format. SessionEndDate *string `json:"session_end_date,omitempty"` // Ticker The futures contract identifier, including the base symbol and contract expiration (e.g., GCJ5 for the April 2025 gold contract). - Ticker *string `json:"ticker,omitempty"` + Ticker string `json:"ticker"` // Timestamp The time when the quote was generated at the exchange to nanosecond precision. - Timestamp *int64 `json:"timestamp,omitempty"` + Timestamp int64 `json:"timestamp"` } `json:"results"` // Status The status of this request's response. @@ -63101,6 +64937,156 @@ func ParseGetFuturesV1SchedulesResponse(rsp *http.Response) (*GetFuturesV1Schedu return response, nil } +// ParseGetFuturesV1SnapshotResponse parses an HTTP response from a GetFuturesV1SnapshotWithResponse call +func ParseGetFuturesV1SnapshotResponse(rsp *http.Response) (*GetFuturesV1SnapshotResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetFuturesV1SnapshotResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: + var dest struct { + // NextUrl If present, this value can be used to fetch the next page. + NextUrl *string `json:"next_url,omitempty"` + + // RequestId A request id assigned by the server. + RequestId string `json:"request_id"` + + // Results The results for this request. + Results []struct { + Details *struct { + ProductCode *string `json:"product_code,omitempty"` + + // SettlementDate The day that this contract is settled. + SettlementDate *openapi_types.Date `json:"settlement_date,omitempty"` + Ticker *string `json:"ticker,omitempty"` + } `json:"details,omitempty"` + LastMinute *struct { + // Close The price at the end of the minute bar. + Close *float64 `json:"close,omitempty"` + + // High The highest price reached in the minute bar. + High *float64 `json:"high,omitempty"` + + // LastUpdated The timestamp indicating the most recent update to the minute bar. + LastUpdated *int64 `json:"last_updated,omitempty"` + + // Low The lowest price reached in the minute bar. + Low *float64 `json:"low,omitempty"` + + // Open The opening price at the start of the minute bar. + Open *float64 `json:"open,omitempty"` + + // Timeframe The timeliness of the data as determined by your subscription. One of REAL-TIME or DELAYED. + Timeframe *string `json:"timeframe,omitempty"` + + // Volume The number of contracts traded in the minute bar. + Volume *int64 `json:"volume,omitempty"` + } `json:"last_minute,omitempty"` + LastQuote *struct { + // Ask The lowest price a seller is willing to accept. + Ask *float64 `json:"ask,omitempty"` + + // AskSize The number of contracts available at the ask price. + AskSize *int32 `json:"ask_size,omitempty"` + + // AskTimestamp The time when the best ask price was last updated. + AskTimestamp *int64 `json:"ask_timestamp,omitempty"` + + // Bid The highest price a buyer is willing to pay. + Bid *float64 `json:"bid,omitempty"` + + // BidSize The number of contracts available at the bid price. + BidSize *int32 `json:"bid_size,omitempty"` + + // BidTimestamp The time when the best bid price was last updated. + BidTimestamp *int64 `json:"bid_timestamp,omitempty"` + + // LastUpdated The time when the quote was generated at the exchange to nanosecond precision. + LastUpdated *int64 `json:"last_updated,omitempty"` + + // Timeframe The timeliness of the data as determined by your subscription. One of REAL-TIME or DELAYED. + Timeframe *string `json:"timeframe,omitempty"` + } `json:"last_quote,omitempty"` + LastTrade *struct { + // LastUpdated The time when the trade was generated at the exchange to nanosecond precision. + LastUpdated *int64 `json:"last_updated,omitempty"` + + // Price The price of the trade. This is the actual dollar value per whole contract of this trade. A trade of 100 contracts with a price of $2.00 would be worth a total dollar value of $200.00. + Price *float64 `json:"price,omitempty"` + + // Size The total number of contracts exchanged between buyers and sellers on a given trade. + Size *int64 `json:"size,omitempty"` + + // Timeframe The timeliness of the data as determined by your subscription. One of REAL-TIME or DELAYED. + Timeframe *string `json:"timeframe,omitempty"` + } `json:"last_trade,omitempty"` + Session *struct { + // Change The change in price during this session. + Change *float64 `json:"change,omitempty"` + + // ChangePercent The percentage change in price during this session. + ChangePercent *float64 `json:"change_percent,omitempty"` + + // Close The price at the end of the session. + Close *float64 `json:"close,omitempty"` + + // High The highest price reached in the session. + High *float64 `json:"high,omitempty"` + + // Low The lowest price reached in the session. + Low *float64 `json:"low,omitempty"` + + // Open The opening price at the start of the session. + Open *float64 `json:"open,omitempty"` + + // PreviousSettlement The settlement price of the previous session. + PreviousSettlement *float64 `json:"previous_settlement,omitempty"` + + // SettlementPrice The final settlement price at the end of the session. + SettlementPrice *float64 `json:"settlement_price,omitempty"` + + // Volume The number of contracts traded in the session. + Volume *int64 `json:"volume,omitempty"` + } `json:"session,omitempty"` + } `json:"results"` + + // Status The status of this request's response. + Status GetFuturesV1Snapshot200Status `json:"status"` + } + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 400: + var dest struct { + // Error A message describing the source of the error. + Error string `json:"error"` + + // RequestId A request id assigned by the server. + RequestId string `json:"request_id"` + + // Status The status of this request's response. + Status GetFuturesV1Snapshot400Status `json:"status"` + } + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON400 = &dest + + } + + return response, nil +} + // ParseGetFuturesV1TradesResponse parses an HTTP response from a GetFuturesV1TradesWithResponse call func ParseGetFuturesV1TradesResponse(rsp *http.Response) (*GetFuturesV1TradesResponse, error) { bodyBytes, err := io.ReadAll(rsp.Body) @@ -63126,16 +65112,16 @@ func ParseGetFuturesV1TradesResponse(rsp *http.Response) (*GetFuturesV1TradesRes // Results The results for this request. Results []struct { // Channel The CME multicast channel this event was sourced from. - Channel *int32 `json:"channel,omitempty"` + Channel int32 `json:"channel"` // Price The price of the trade. This is the actual dollar value per whole contract of this trade. A trade of 100 contracts with a price of $2.00 would be worth a total dollar value of $200.00. Price *float64 `json:"price,omitempty"` // ReportSequence The reporting sequence number. - ReportSequence *int64 `json:"report_sequence,omitempty"` + ReportSequence int64 `json:"report_sequence"` // SequenceNumber The unique sequence number assigned to this trade. - SequenceNumber *int64 `json:"sequence_number,omitempty"` + SequenceNumber int64 `json:"sequence_number"` // SessionEndDate Also known as the trading date, the date of the end of the trading session, in YYYY-MM-DD format. SessionEndDate *string `json:"session_end_date,omitempty"` @@ -63144,10 +65130,10 @@ func ParseGetFuturesV1TradesResponse(rsp *http.Response) (*GetFuturesV1TradesRes Size *int64 `json:"size,omitempty"` // Ticker The futures contract identifier, including the base symbol and contract expiration (e.g., GCJ5 for the April 2025 gold contract). - Ticker *string `json:"ticker,omitempty"` + Ticker string `json:"ticker"` // Timestamp The time when the trade was generated at the exchange to nanosecond precision. - Timestamp *int64 `json:"timestamp,omitempty"` + Timestamp int64 `json:"timestamp"` } `json:"results"` // Status The status of this request's response. @@ -63270,10 +65256,10 @@ func ParseGetFuturesVXContractsResponse(rsp *http.Response) (*GetFuturesVXContra // Results The results for this request. Results []struct { // Active Whether or not a given contract was tradeable at the given point in time. Active is true when (first_trade_date <= date >= last_trade_date) and false otherwise. - Active *bool `json:"active,omitempty"` + Active bool `json:"active"` // Date A date string in the format YYYY-MM-DD. This parameter will return point-in-time information about contracts for the specified day. - Date *openapi_types.Date `json:"date,omitempty"` + Date openapi_types.Date `json:"date"` // DaysToMaturity The number of calendar days between the 'date' and the contract's final settlement date. DaysToMaturity *int64 `json:"days_to_maturity,omitempty"` @@ -63378,7 +65364,7 @@ func ParseGetFuturesVXExchangesResponse(rsp *http.Response) (*GetFuturesVXExchan Acronym *string `json:"acronym,omitempty"` // Id Numeric identifier for the futures exchange or trading venue. - Id *string `json:"id,omitempty"` + Id string `json:"id"` // Locale Geographic location code where the exchange operates. Locale *string `json:"locale,omitempty"` @@ -63387,13 +65373,13 @@ func ParseGetFuturesVXExchangesResponse(rsp *http.Response) (*GetFuturesVXExchan Mic *string `json:"mic,omitempty"` // Name Full official name of the futures exchange (e.g., 'Chicago Mercantile Exchange', 'New York Mercantile Exchange'). - Name *string `json:"name,omitempty"` + Name string `json:"name"` // OperatingMic Operating Market Identifier Code for the futures exchange. OperatingMic *string `json:"operating_mic,omitempty"` // Type Type of venue - 'exchange' for futures exchanges and derivatives trading platforms. - Type *string `json:"type,omitempty"` + Type string `json:"type"` // Url Official website URL of the futures exchange organization. Url *string `json:"url,omitempty"` @@ -63648,22 +65634,22 @@ func ParseGetFuturesVXQuotesResponse(rsp *http.Response) (*GetFuturesVXQuotesRes BidTimestamp *int64 `json:"bid_timestamp,omitempty"` // Channel The CME multicast channel this event was sourced from. - Channel *int32 `json:"channel,omitempty"` + Channel int32 `json:"channel"` // ReportSequence The reporting sequence number. - ReportSequence *int64 `json:"report_sequence,omitempty"` + ReportSequence int64 `json:"report_sequence"` // SequenceNumber The unique sequence number assigned to this quote by the exchange. - SequenceNumber *int64 `json:"sequence_number,omitempty"` + SequenceNumber int64 `json:"sequence_number"` // SessionEndDate Also known as the trading date, the date of the end of the trading session, in YYYY-MM-DD format. SessionEndDate *string `json:"session_end_date,omitempty"` // Ticker The futures contract identifier, including the base symbol and contract expiration (e.g., GCJ5 for the April 2025 gold contract). - Ticker *string `json:"ticker,omitempty"` + Ticker string `json:"ticker"` // Timestamp The time when the quote was generated at the exchange to nanosecond precision. - Timestamp *int64 `json:"timestamp,omitempty"` + Timestamp int64 `json:"timestamp"` } `json:"results"` // Status The status of this request's response. @@ -63818,7 +65804,7 @@ func ParseGetFuturesVXSnapshotResponse(rsp *http.Response) (*GetFuturesVXSnapsho Timeframe *string `json:"timeframe,omitempty"` // Volume The number of contracts traded in the minute bar. - Volume *float64 `json:"volume,omitempty"` + Volume *int64 `json:"volume,omitempty"` } `json:"last_minute,omitempty"` LastQuote *struct { // Ask The lowest price a seller is willing to accept. @@ -63884,7 +65870,7 @@ func ParseGetFuturesVXSnapshotResponse(rsp *http.Response) (*GetFuturesVXSnapsho SettlementPrice *float64 `json:"settlement_price,omitempty"` // Volume The number of contracts traded in the session. - Volume *float64 `json:"volume,omitempty"` + Volume *int64 `json:"volume,omitempty"` } `json:"session,omitempty"` } `json:"results"` @@ -63942,16 +65928,16 @@ func ParseGetFuturesVXTradesResponse(rsp *http.Response) (*GetFuturesVXTradesRes // Results The results for this request. Results []struct { // Channel The CME multicast channel this event was sourced from. - Channel *int32 `json:"channel,omitempty"` + Channel int32 `json:"channel"` // Price The price of the trade. This is the actual dollar value per whole contract of this trade. A trade of 100 contracts with a price of $2.00 would be worth a total dollar value of $200.00. Price *float64 `json:"price,omitempty"` // ReportSequence The reporting sequence number. - ReportSequence *int64 `json:"report_sequence,omitempty"` + ReportSequence int64 `json:"report_sequence"` // SequenceNumber The unique sequence number assigned to this trade. - SequenceNumber *int64 `json:"sequence_number,omitempty"` + SequenceNumber int64 `json:"sequence_number"` // SessionEndDate Also known as the trading date, the date of the end of the trading session, in YYYY-MM-DD format. SessionEndDate *string `json:"session_end_date,omitempty"` @@ -63960,10 +65946,10 @@ func ParseGetFuturesVXTradesResponse(rsp *http.Response) (*GetFuturesVXTradesRes Size *int64 `json:"size,omitempty"` // Ticker The futures contract identifier, including the base symbol and contract expiration (e.g., GCJ5 for the April 2025 gold contract). - Ticker *string `json:"ticker,omitempty"` + Ticker string `json:"ticker"` // Timestamp The time when the trade was generated at the exchange to nanosecond precision. - Timestamp *int64 `json:"timestamp,omitempty"` + Timestamp int64 `json:"timestamp"` } `json:"results"` // Status The status of this request's response. @@ -64023,7 +66009,7 @@ func ParseGetOptionsV1ExchangesResponse(rsp *http.Response) (*GetOptionsV1Exchan Acronym *string `json:"acronym,omitempty"` // Id Numeric identifier for the options trading venue or exchange. - Id *string `json:"id,omitempty"` + Id string `json:"id"` // Locale Geographic location code. Locale *string `json:"locale,omitempty"` @@ -64032,7 +66018,7 @@ func ParseGetOptionsV1ExchangesResponse(rsp *http.Response) (*GetOptionsV1Exchan Mic *string `json:"mic,omitempty"` // Name Full official name of the options exchange or trading venue. - Name *string `json:"name,omitempty"` + Name string `json:"name"` // OperatingMic Operating Market Identifier Code - identifies the parent organization or operating entity. OperatingMic *string `json:"operating_mic,omitempty"` @@ -64041,7 +66027,7 @@ func ParseGetOptionsV1ExchangesResponse(rsp *http.Response) (*GetOptionsV1Exchan ParticipantId *string `json:"participant_id,omitempty"` // Type Type of venue: 'exchange' for options exchanges, 'SIP' for Securities Information Processors like OPRA (Options Price Reporting Authority). - Type *string `json:"type,omitempty"` + Type string `json:"type"` // Url Official website URL of the organization operating the options exchange. Url *string `json:"url,omitempty"` @@ -64298,9 +66284,6 @@ func ParseGetStocksFilingsVX13FResponse(rsp *http.Response) (*GetStocksFilingsVX // SharesOrPrincipalType Type of amount reported. Possible values: SH (shares), PRN (principal amount). SharesOrPrincipalType *string `json:"shares_or_principal_type,omitempty"` - // Tickers A list of ticker symbols for the filing entity. Multiple symbols may indicate different share classes (e.g., BRK.A and BRK.B for Berkshire Hathaway). - Tickers *[]string `json:"tickers,omitempty"` - // TitleOfClass Description of the class of securities held (e.g., 'COM', 'CL A'). TitleOfClass *string `json:"title_of_class,omitempty"` @@ -64343,6 +66326,327 @@ func ParseGetStocksFilingsVX13FResponse(rsp *http.Response) (*GetStocksFilingsVX return response, nil } +// ParseGetStocksFilingsVXForm3Response parses an HTTP response from a GetStocksFilingsVXForm3WithResponse call +func ParseGetStocksFilingsVXForm3Response(rsp *http.Response) (*GetStocksFilingsVXForm3Response, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetStocksFilingsVXForm3Response{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: + var dest struct { + // NextUrl If present, this value can be used to fetch the next page. + NextUrl *string `json:"next_url,omitempty"` + + // RequestId A request id assigned by the server. + RequestId string `json:"request_id"` + + // Results The results for this request. + Results []struct { + // AccessionNumber Unique SEC accession number for the filing (e.g., '0001209191-25-012345'). + AccessionNumber *string `json:"accession_number,omitempty"` + + // Aff10b5One Whether the transaction was made pursuant to a Rule 10b5-1 trading plan. + Aff10b5One *bool `json:"aff_10b5_one,omitempty"` + + // DateOfOriginalSubmission Date of the original filing submission for amendment filings (3/A). Null for initial filings (formatted as YYYY-MM-DD). + DateOfOriginalSubmission *openapi_types.Date `json:"date_of_original_submission,omitempty"` + + // DirectOrIndirect Whether ownership is direct ('D') or indirect ('I'). + DirectOrIndirect *string `json:"direct_or_indirect,omitempty"` + + // ExerciseDate Date exercisable for derivative securities (formatted as YYYY-MM-DD). + ExerciseDate *openapi_types.Date `json:"exercise_date,omitempty"` + + // ExercisePrice Exercise or conversion price of derivative securities in USD. + ExercisePrice *float64 `json:"exercise_price,omitempty"` + + // FilingDate Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD). + FilingDate *openapi_types.Date `json:"filing_date,omitempty"` + + // FilingUrl Direct URL to the filing on the SEC EDGAR website. + FilingUrl *string `json:"filing_url,omitempty"` + + // Footnotes List of footnotes from the filing that are relevant to this row, each with an id and description. + Footnotes *[]struct { + Description *string `json:"description,omitempty"` + Id *string `json:"id,omitempty"` + } `json:"footnotes,omitempty"` + + // FormType SEC form type ('3' for initial filing, '3/A' for amendments). + FormType *string `json:"form_type,omitempty"` + + // IsDirector Whether the reporting owner is a director of the issuer. + IsDirector *bool `json:"is_director,omitempty"` + + // IsOfficer Whether the reporting owner is an officer of the issuer. + IsOfficer *bool `json:"is_officer,omitempty"` + + // IsOther Whether the reporting owner has another relationship with the issuer. + IsOther *bool `json:"is_other,omitempty"` + + // IsTenPercentOwner Whether the reporting owner holds 10% or more of a class of equity securities. + IsTenPercentOwner *bool `json:"is_ten_percent_owner,omitempty"` + + // IssuerCik SEC Central Index Key of the issuer company (10 digits, zero-padded). + IssuerCik *string `json:"issuer_cik,omitempty"` + + // IssuerName Name of the issuer company as reported in the filing. + IssuerName *string `json:"issuer_name,omitempty"` + + // NatureOfOwnership Nature of indirect ownership (e.g., 'By Trust', 'By Spouse'). + NatureOfOwnership *string `json:"nature_of_ownership,omitempty"` + + // NotSubjectToSection16 Whether the reporting owner is not subject to Section 16 of the Securities Exchange Act. + NotSubjectToSection16 *bool `json:"not_subject_to_section_16,omitempty"` + + // OfficerTitle Title of the officer, if the reporting owner is an officer. + OfficerTitle *string `json:"officer_title,omitempty"` + + // OwnerCik SEC Central Index Key of the reporting owner (10 digits, zero-padded). + OwnerCik *string `json:"owner_cik,omitempty"` + + // OwnerName Name of the reporting owner (individual or entity). + OwnerName *string `json:"owner_name,omitempty"` + + // PeriodOfReport Date of the event triggering the filing (formatted as YYYY-MM-DD). + PeriodOfReport *openapi_types.Date `json:"period_of_report,omitempty"` + + // Remarks Additional remarks included in the filing. + Remarks *string `json:"remarks,omitempty"` + + // SecurityTitle Title or description of the security (e.g., 'Common Stock', 'Stock Option'). + SecurityTitle *string `json:"security_title,omitempty"` + + // SecurityType Type of security ('non-derivative' or 'derivative'). + SecurityType *string `json:"security_type,omitempty"` + + // SharesOwned Number of shares beneficially owned. + SharesOwned *float64 `json:"shares_owned,omitempty"` + + // Tickers A list of ticker symbols for the issuer company. Multiple symbols may indicate different share classes. + Tickers *[]string `json:"tickers,omitempty"` + + // UnderlyingSecurityShares Number of underlying shares for derivative holdings. + UnderlyingSecurityShares *float64 `json:"underlying_security_shares,omitempty"` + + // UnderlyingSecurityTitle Title of the underlying security for derivative holdings. + UnderlyingSecurityTitle *string `json:"underlying_security_title,omitempty"` + } `json:"results"` + + // Status The status of this request's response. + Status GetStocksFilingsVXForm3200Status `json:"status"` + } + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 400: + var dest struct { + // Error A message describing the source of the error. + Error string `json:"error"` + + // RequestId A request id assigned by the server. + RequestId string `json:"request_id"` + + // Status The status of this request's response. + Status GetStocksFilingsVXForm3400Status `json:"status"` + } + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON400 = &dest + + } + + return response, nil +} + +// ParseGetStocksFilingsVXForm4Response parses an HTTP response from a GetStocksFilingsVXForm4WithResponse call +func ParseGetStocksFilingsVXForm4Response(rsp *http.Response) (*GetStocksFilingsVXForm4Response, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetStocksFilingsVXForm4Response{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: + var dest struct { + // NextUrl If present, this value can be used to fetch the next page. + NextUrl *string `json:"next_url,omitempty"` + + // RequestId A request id assigned by the server. + RequestId string `json:"request_id"` + + // Results The results for this request. + Results []struct { + // AccessionNumber Unique SEC accession number for the filing (e.g., '0001209191-25-012345'). + AccessionNumber *string `json:"accession_number,omitempty"` + + // Aff10b5One Whether the transaction was made pursuant to a Rule 10b5-1 trading plan. + Aff10b5One *bool `json:"aff_10b5_one,omitempty"` + + // DateOfOriginalSubmission Date of the original filing submission for amendment filings (4/A). Null for standard filings (formatted as YYYY-MM-DD). + DateOfOriginalSubmission *openapi_types.Date `json:"date_of_original_submission,omitempty"` + + // DeemedExecutionDate Deemed execution date if different from transaction date (formatted as YYYY-MM-DD). + DeemedExecutionDate *openapi_types.Date `json:"deemed_execution_date,omitempty"` + + // DirectOrIndirect Whether ownership is direct ('D') or indirect ('I'). + DirectOrIndirect *string `json:"direct_or_indirect,omitempty"` + + // EquitySwapInvolved Whether an equity swap was involved in the transaction. + EquitySwapInvolved *bool `json:"equity_swap_involved,omitempty"` + + // ExerciseDate Date exercisable for derivative securities (formatted as YYYY-MM-DD). + ExerciseDate *openapi_types.Date `json:"exercise_date,omitempty"` + + // ExercisePrice Exercise or conversion price of derivative securities in USD. + ExercisePrice *float64 `json:"exercise_price,omitempty"` + + // ExpirationDate Expiration date for derivative securities (formatted as YYYY-MM-DD). + ExpirationDate *openapi_types.Date `json:"expiration_date,omitempty"` + + // FilingDate Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD). + FilingDate *openapi_types.Date `json:"filing_date,omitempty"` + + // FilingUrl Direct URL to the filing on the SEC EDGAR website. + FilingUrl *string `json:"filing_url,omitempty"` + + // Footnotes List of footnotes from the filing that are relevant to this row, each with an id and description. + Footnotes *[]struct { + Description *string `json:"description,omitempty"` + Id *string `json:"id,omitempty"` + } `json:"footnotes,omitempty"` + + // FormType SEC form type ('4' for standard filing, '4/A' for amendments). + FormType *string `json:"form_type,omitempty"` + + // IsDirector Whether the reporting owner is a director of the issuer. + IsDirector *bool `json:"is_director,omitempty"` + + // IsOfficer Whether the reporting owner is an officer of the issuer. + IsOfficer *bool `json:"is_officer,omitempty"` + + // IsOther Whether the reporting owner has another relationship with the issuer. + IsOther *bool `json:"is_other,omitempty"` + + // IsTenPercentOwner Whether the reporting owner holds 10% or more of a class of equity securities. + IsTenPercentOwner *bool `json:"is_ten_percent_owner,omitempty"` + + // IssuerCik SEC Central Index Key of the issuer company (10 digits, zero-padded). + IssuerCik *string `json:"issuer_cik,omitempty"` + + // IssuerName Name of the issuer company as reported in the filing. + IssuerName *string `json:"issuer_name,omitempty"` + + // NatureOfOwnership Nature of indirect ownership (e.g., 'By Trust', 'By Spouse'). + NatureOfOwnership *string `json:"nature_of_ownership,omitempty"` + + // NotSubjectToSection16 Whether the reporting owner is not subject to Section 16 of the Securities Exchange Act. + NotSubjectToSection16 *bool `json:"not_subject_to_section_16,omitempty"` + + // OfficerTitle Title of the officer, if the reporting owner is an officer. + OfficerTitle *string `json:"officer_title,omitempty"` + + // OwnerCik SEC Central Index Key of the reporting owner (10 digits, zero-padded). + OwnerCik *string `json:"owner_cik,omitempty"` + + // OwnerName Name of the reporting owner (individual or entity). + OwnerName *string `json:"owner_name,omitempty"` + + // PeriodOfReport Date of the event triggering the filing (formatted as YYYY-MM-DD). + PeriodOfReport *openapi_types.Date `json:"period_of_report,omitempty"` + + // RecordType Type of record in the filing (e.g., 'transaction', 'holding'). + RecordType *string `json:"record_type,omitempty"` + + // Remarks Additional remarks included in the filing. + Remarks *string `json:"remarks,omitempty"` + + // SecurityTitle Title or description of the security (e.g., 'Common Stock', 'Stock Option'). + SecurityTitle *string `json:"security_title,omitempty"` + + // SecurityType Type of security ('non-derivative' or 'derivative'). + SecurityType *string `json:"security_type,omitempty"` + + // SharesOwnedFollowingTransaction Total shares beneficially owned after the transaction. + SharesOwnedFollowingTransaction *float64 `json:"shares_owned_following_transaction,omitempty"` + + // Tickers A list of ticker symbols for the issuer company. Multiple symbols may indicate different share classes. + Tickers *[]string `json:"tickers,omitempty"` + + // TransactionAcquiredDisposed Whether shares were acquired ('A') or disposed of ('D'). + TransactionAcquiredDisposed *string `json:"transaction_acquired_disposed,omitempty"` + + // TransactionCode SEC transaction code indicating the type of transaction (e.g., 'P' for purchase, 'S' for sale, 'A' for grant/award, 'M' for exercise/conversion). + TransactionCode *string `json:"transaction_code,omitempty"` + + // TransactionDate Date of the transaction (formatted as YYYY-MM-DD). + TransactionDate *openapi_types.Date `json:"transaction_date,omitempty"` + + // TransactionPricePerShare Price per share of the transaction in USD. + TransactionPricePerShare *float64 `json:"transaction_price_per_share,omitempty"` + + // TransactionShares Number of shares involved in the transaction. + TransactionShares *float64 `json:"transaction_shares,omitempty"` + + // TransactionTimeliness Timeliness of the filing: 'O' (on time) or 'L' (late). + TransactionTimeliness *string `json:"transaction_timeliness,omitempty"` + + // TransactionValue Total value of the transaction in USD (transaction_shares x transaction_price_per_share). Null when shares or price is not reported. + TransactionValue *float64 `json:"transaction_value,omitempty"` + + // UnderlyingSecurityShares Number of underlying shares for derivative transactions. + UnderlyingSecurityShares *float64 `json:"underlying_security_shares,omitempty"` + + // UnderlyingSecurityTitle Title of the underlying security for derivative transactions. + UnderlyingSecurityTitle *string `json:"underlying_security_title,omitempty"` + } `json:"results"` + + // Status The status of this request's response. + Status GetStocksFilingsVXForm4200Status `json:"status"` + } + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 400: + var dest struct { + // Error A message describing the source of the error. + Error string `json:"error"` + + // RequestId A request id assigned by the server. + RequestId string `json:"request_id"` + + // Status The status of this request's response. + Status GetStocksFilingsVXForm4400Status `json:"status"` + } + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON400 = &dest + + } + + return response, nil +} + // ParseGetStocksFilingsVXIndexResponse parses an HTTP response from a GetStocksFilingsVXIndexWithResponse call func ParseGetStocksFilingsVXIndexResponse(rsp *http.Response) (*GetStocksFilingsVXIndexResponse, error) { bodyBytes, err := io.ReadAll(rsp.Body) @@ -64605,7 +66909,7 @@ func ParseGetStocksFinancialsV1BalanceSheetsResponse(rsp *http.Response) (*GetSt Tickers *[]string `json:"tickers,omitempty"` // Timeframe The reporting period type. Possible values include: quarterly, annual. - Timeframe *string `json:"timeframe,omitempty"` + Timeframe string `json:"timeframe"` // TotalAssets Sum of all current and non-current assets representing everything the company owns or controls. TotalAssets *float64 `json:"total_assets,omitempty"` @@ -65004,7 +67308,7 @@ func ParseGetStocksFinancialsV1RatiosResponse(rsp *http.Response) (*GetStocksFin Current *float64 `json:"current,omitempty"` // Date Date for which the ratios are calculated, representing the trading date with available price data. - Date *string `json:"date,omitempty"` + Date string `json:"date"` // DebtToEquity Debt-to-equity ratio, calculated as total debt (current debt plus long-term debt) divided by total shareholders' equity, measuring financial leverage. DebtToEquity *float64 `json:"debt_to_equity,omitempty"` @@ -65058,7 +67362,7 @@ func ParseGetStocksFinancialsV1RatiosResponse(rsp *http.Response) (*GetStocksFin ReturnOnEquity *float64 `json:"return_on_equity,omitempty"` // Ticker Stock ticker symbol for the company. - Ticker *string `json:"ticker,omitempty"` + Ticker string `json:"ticker"` } `json:"results"` // Status The status of this request's response. @@ -65124,7 +67428,7 @@ func ParseGetStocksTaxonomiesVXRiskFactorsResponse(rsp *http.Response) (*GetStoc SecondaryCategory *string `json:"secondary_category,omitempty"` // Taxonomy Version identifier (e.g., '1.0', '1.1') for the taxonomy - Taxonomy *float64 `json:"taxonomy,omitempty"` + Taxonomy float64 `json:"taxonomy"` // TertiaryCategory Most specific risk classification TertiaryCategory *string `json:"tertiary_category,omitempty"` @@ -65193,7 +67497,7 @@ func ParseGetStocksV1DividendsResponse(rsp *http.Response) (*GetStocksV1Dividend DeclarationDate *openapi_types.Date `json:"declaration_date,omitempty"` // DistributionType Classification describing the nature of this dividend's recurrence pattern: recurring (paid on a regular schedule), special (one-time or commemorative), supplemental (extra beyond the regular schedule), irregular (unpredictable or non-recurring), unknown (cannot be classified from available data) - DistributionType *string `json:"distribution_type,omitempty"` + DistributionType string `json:"distribution_type"` // ExDividendDate Date when the stock begins trading without the dividend value ExDividendDate *openapi_types.Date `json:"ex_dividend_date,omitempty"` @@ -65277,7 +67581,7 @@ func ParseGetStocksV1ExchangesResponse(rsp *http.Response) (*GetStocksV1Exchange Acronym *string `json:"acronym,omitempty"` // Id Numeric identifier for the trading venue or exchange. - Id *string `json:"id,omitempty"` + Id string `json:"id"` // Locale Geographic location code. Locale *string `json:"locale,omitempty"` @@ -65286,7 +67590,7 @@ func ParseGetStocksV1ExchangesResponse(rsp *http.Response) (*GetStocksV1Exchange Mic *string `json:"mic,omitempty"` // Name Full official name of the exchange, trading venue, or reporting facility. - Name *string `json:"name,omitempty"` + Name string `json:"name"` // OperatingMic Operating Market Identifier Code - identifies the specific operating entity or parent organization. OperatingMic *string `json:"operating_mic,omitempty"` @@ -65295,7 +67599,7 @@ func ParseGetStocksV1ExchangesResponse(rsp *http.Response) (*GetStocksV1Exchange ParticipantId *string `json:"participant_id,omitempty"` // Type Type of trading venue: 'exchange' for stock exchanges, 'TRF' for Trade Reporting Facilities, 'SIP' for Securities Information Processors, 'ORF' for OTC Reporting Facility. - Type *string `json:"type,omitempty"` + Type string `json:"type"` // Url Official website URL of the organization operating the venue. Url *string `json:"url,omitempty"` @@ -65355,13 +67659,13 @@ func ParseGetStocksV1ShortInterestResponse(rsp *http.Response) (*GetStocksV1Shor // Results The results for this request. Results []struct { // AvgDailyVolume The average daily trading volume for the stock over a specified period, typically used to contextualize short interest. - AvgDailyVolume *int64 `json:"avg_daily_volume,omitempty"` + AvgDailyVolume int64 `json:"avg_daily_volume"` // DaysToCover Calculated as short_interest divided by avg_daily_volume, representing the estimated number of days it would take to cover all short positions based on average trading volume. - DaysToCover *float64 `json:"days_to_cover,omitempty"` + DaysToCover float64 `json:"days_to_cover"` // SettlementDate The date (formatted as YYYY-MM-DD) on which the short interest data is considered settled, typically based on exchange reporting schedules. - SettlementDate *string `json:"settlement_date,omitempty"` + SettlementDate string `json:"settlement_date"` // ShortInterest The total number of shares that have been sold short but have not yet been covered or closed out. ShortInterest *int64 `json:"short_interest,omitempty"` @@ -65430,7 +67734,7 @@ func ParseGetStocksV1ShortVolumeResponse(rsp *http.Response) (*GetStocksV1ShortV AdfShortVolumeExempt *int64 `json:"adf_short_volume_exempt,omitempty"` // Date The date of trade activity reported in the format YYYY-MM-DD - Date *string `json:"date,omitempty"` + Date string `json:"date"` // ExemptVolume Portion of short volume that was marked as exempt from regulation SHO. ExemptVolume *float64 `json:"exempt_volume,omitempty"` @@ -65523,7 +67827,7 @@ func ParseGetStocksV1SplitsResponse(rsp *http.Response) (*GetStocksV1SplitsRespo // Results The results for this request. Results []struct { // AdjustmentType Classification of the share-change event. Possible values include: forward_split (share count increases), reverse_split (share count decreases), stock_dividend (shares issued as a dividend) - AdjustmentType *string `json:"adjustment_type,omitempty"` + AdjustmentType string `json:"adjustment_type"` // ExecutionDate Date when the stock split was applied and shares adjusted ExecutionDate *openapi_types.Date `json:"execution_date,omitempty"` @@ -73506,6 +75810,9 @@ func ParseGetCryptoTradesResponse(rsp *http.Response) (*GetCryptoTradesResponse, // Price The price of the trade in the base currency of the crypto pair. Price float64 `json:"price"` + // ReceivedTimestamp The nanosecond accuracy timestamp of when the tick was received by Massive. + ReceivedTimestamp *int64 `json:"received_timestamp,omitempty"` + // Size The size of a trade (also known as volume). Size float64 `json:"size"` } `json:"results,omitempty"` @@ -73567,6 +75874,9 @@ func ParseGetOptionsTradesResponse(rsp *http.Response) (*GetOptionsTradesRespons // total dollar value of $200.00. Price float64 `json:"price"` + // SequenceNumber The sequence number represents the sequence in which message events happened. These are increasing and unique per ticker symbol, but will not always be consecutive (e.g. 1, 2, 6, 9, 10, 11). + SequenceNumber *int64 `json:"sequence_number,omitempty"` + // SipTimestamp The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this trade from the exchange which produced it. SipTimestamp int64 `json:"sip_timestamp"` diff --git a/rest/scripts/openapi.json b/rest/scripts/openapi.json index 9c66e38b..e57d64c4 100644 --- a/rest/scripts/openapi.json +++ b/rest/scripts/openapi.json @@ -9603,6 +9603,9 @@ "type": "string" } }, + "required": [ + "user_country" + ], "type": "object" }, "type": "array" @@ -10005,6 +10008,9 @@ "type": "string" } }, + "required": [ + "listing_status" + ], "type": "object" }, "type": "array" @@ -10137,6 +10143,11 @@ "type": "string" } }, + "required": [ + "id", + "type", + "name" + ], "type": "object" }, "type": "array" @@ -11614,6 +11625,7 @@ } }, "required": [ + "constituent_rank", "effective_date" ], "type": "object" @@ -12789,6 +12801,11 @@ "type": "string" } }, + "required": [ + "product_type", + "leverage_style", + "management_classification" + ], "type": "object" }, "type": "array" @@ -13224,6 +13241,11 @@ "type": "string" } }, + "required": [ + "product_type", + "leverage_style", + "management_classification" + ], "type": "object" }, "type": "array" @@ -14177,6 +14199,11 @@ "type": "string" } }, + "required": [ + "id", + "type", + "name" + ], "type": "object" }, "type": "array" @@ -14879,6 +14906,10 @@ "type": "string" } }, + "required": [ + "active", + "date" + ], "type": "object" }, "type": "array" @@ -15026,6 +15057,11 @@ "type": "string" } }, + "required": [ + "id", + "type", + "name" + ], "type": "object" }, "type": "array" @@ -15989,28 +16025,31 @@ "request_id": "a47d1beb8c11b6ae897ab76cdbbf35a3", "results": [ { - "ask_timestamp": "1734472800076125400,", - "bid_price": "2660,", - "bid_size": "1,", - "bid_timestamp": "1734472800076125400,", - "report_sequence": "2250337,", + "ask_size": 0, + "ask_timestamp": 1734472800076125400, + "bid_price": 2660, + "bid_size": 1, + "bid_timestamp": 1734472800076125400, + "channel": 360, + "report_sequence": 2250337, "sequence_number": 15357766, - "session_end_date": "2024-12-17,", - "ticker": "GCJ5,", - "timestamp": "1734472800076125400," + "session_end_date": "2024-12-17", + "ticker": "GCJ5", + "timestamp": 1734472800076125400 }, { - "ask_price": "2685.9,", - "ask_size": "1,", - "ask_timestamp": "1734472755134391800,", - "bid_price": "2684.7,", - "bid_size": "1,", - "bid_timestamp": "1734472736352455200,", - "report_sequence": "2249723,", - "sequence_number": 15354716, - "session_end_date": "2024-12-17,", - "ticker": "GCJ5,", - "timestamp": "1734472755134391800," + "ask_price": 2686, + "ask_size": 1, + "ask_timestamp": 1734472770000588000, + "bid_price": 2684.7, + "bid_size": 1, + "bid_timestamp": 1734472736352455200, + "channel": 360, + "report_sequence": 2249866, + "sequence_number": 15355476, + "session_end_date": "2024-12-17", + "ticker": "GCJ5", + "timestamp": 1734472770000588000 } ], "status": "OK" @@ -16088,6 +16127,13 @@ "type": "integer" } }, + "required": [ + "ticker", + "timestamp", + "sequence_number", + "report_sequence", + "channel" + ], "type": "object" }, "type": "array" @@ -16448,85 +16494,124 @@ ] } }, - "/futures/v1/trades/{ticker}": { + "/futures/v1/snapshot": { "get": { - "description": "Retrieve comprehensive, tick-level trade data for a specified futures contract ticker over a defined time range. Each record includes the trade price, size, session start date, and precise timestamps, capturing individual trade events throughout the period. This granular data is essential for constructing aggregated bars and performing detailed analyses of intraday price movements, making it a valuable tool for backtesting, algorithmic strategy development, and market research.\n\nUse Cases: Intraday analysis, algorithmic trading, backtesting, market research.", - "operationId": "get_futures_v1_trades", + "description": "Retrieve a snapshot of the most recent futures contract data.", + "operationId": "get_futures_v1_snapshot", "parameters": [ { - "description": "The time when the trade was generated at the exchange to nanosecond precision. Value must be an integer timestamp in nanoseconds, formatted 'yyyy-mm-dd', or ISO 8601/RFC 3339 (e.g. '2024-05-28T20:27:41Z').", + "description": "The code for the contracts' underlying product.", "in": "query", - "name": "timestamp", + "name": "product_code", "schema": { "type": "string" } }, { - "description": "Filter greater than the value. Value must be an integer timestamp in nanoseconds, formatted 'yyyy-mm-dd', or ISO 8601/RFC 3339 (e.g. '2024-05-28T20:27:41Z').", + "description": "Filter equal to any of the values. Multiple values can be specified by using a comma separated list.", "in": "query", - "name": "timestamp.gt", + "name": "product_code.any_of", "schema": { "type": "string" } }, { - "description": "Filter greater than or equal to the value. Value must be an integer timestamp in nanoseconds, formatted 'yyyy-mm-dd', or ISO 8601/RFC 3339 (e.g. '2024-05-28T20:27:41Z').", + "description": "Filter greater than the value.", "in": "query", - "name": "timestamp.gte", + "name": "product_code.gt", "schema": { "type": "string" } }, { - "description": "Filter less than the value. Value must be an integer timestamp in nanoseconds, formatted 'yyyy-mm-dd', or ISO 8601/RFC 3339 (e.g. '2024-05-28T20:27:41Z').", + "description": "Filter greater than or equal to the value.", "in": "query", - "name": "timestamp.lt", + "name": "product_code.gte", "schema": { "type": "string" } }, { - "description": "Filter less than or equal to the value. Value must be an integer timestamp in nanoseconds, formatted 'yyyy-mm-dd', or ISO 8601/RFC 3339 (e.g. '2024-05-28T20:27:41Z').", + "description": "Filter less than the value.", "in": "query", - "name": "timestamp.lte", + "name": "product_code.lt", "schema": { "type": "string" } }, { - "description": "Also known as the trading date, the date of the end of the trading session, in YYYY-MM-DD format.", + "description": "Filter less than or equal to the value.", "in": "query", - "name": "session_end_date", + "name": "product_code.lte", "schema": { "type": "string" } }, { - "description": "Limit the maximum number of results returned. Defaults to '10' if not specified. The maximum allowed limit is '49999'.", + "description": "The futures contract identifier, including the base symbol and contract expiration (e.g., ESZ24 for the December 2024 S&P 500 E-mini contract).", "in": "query", - "name": "limit", + "name": "ticker", "schema": { - "default": 10, - "maximum": 50000, - "minimum": 1, - "type": "integer" + "type": "string" } }, { - "description": "A comma separated list of sort columns. For each column, append '.asc' or '.desc' to specify the sort direction. The sort column defaults to 'timestamp' if not specified. The sort order defaults to 'desc' if not specified.", + "description": "Filter equal to any of the values. Multiple values can be specified by using a comma separated list.", "in": "query", - "name": "sort", + "name": "ticker.any_of", "schema": { - "default": "timestamp.desc", "type": "string" } }, { - "description": "The futures contract identifier, including the base symbol and contract expiration (e.g., GCJ5 for the April 2025 gold contract).", - "in": "path", - "name": "ticker", - "required": true, + "description": "Filter greater than the value.", + "in": "query", + "name": "ticker.gt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter greater than or equal to the value.", + "in": "query", + "name": "ticker.gte", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than the value.", + "in": "query", + "name": "ticker.lt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than or equal to the value.", + "in": "query", + "name": "ticker.lte", + "schema": { + "type": "string" + } + }, + { + "description": "Limit the maximum number of results returned. Defaults to '100' if not specified. The maximum allowed limit is '50000'.", + "in": "query", + "name": "limit", + "schema": { + "default": 100, + "maximum": 50001, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "A comma separated list of sort columns. For each column, append '.asc' or '.desc' to specify the sort direction. The sort column defaults to 'ticker' if not specified. The sort order defaults to 'asc' if not specified.", + "in": "query", + "name": "sort", "schema": { + "default": "ticker.asc", "type": "string" } } @@ -16536,35 +16621,50 @@ "content": { "application/json": { "example": { - "next_url": "https://api.massive.com/futures/vX/trades/ESZ4?cursor=YXA9MTczNDQ3MDk3MDAwODU5OTI2MSZhcz0yNzIzNTI4MyZsaW1pdD0xMDAwJnNlc3Npb25fZW5kX2RhdGU9MjAyNC0xMi0xNyZzb3J0PXRpbWVzdGFtcC5kZXNj", - "request_id": "a47d1beb8c11b6ae897ab76cdbbf35a3", + "count": 1, + "next_url": "https://api.massive.com/futures/v1/snapshot?cursor=AQANAkNCBVNQ", + "request_id": "c4d50f4801874e30b63e674b844cf51f", "results": [ { - "price": 6052, - "report_sequence": 12033289, - "sequence_number": 27317882, - "session_end_date": "2024-12-17", - "size": 3, - "ticker": "ESZ4", - "timestamp": 1734472799000509200 - }, - { - "price": 6051.75, - "report_sequence": 12033276, - "sequence_number": 27317863, - "session_end_date": "2024-12-17", - "size": 1, - "ticker": "ESZ4", - "timestamp": 1734472798789679900 - }, - { - "price": 6052, - "report_sequence": 12033255, - "sequence_number": 27317826, - "session_end_date": "2024-12-17", - "size": 2, - "ticker": "ESZ4", - "timestamp": 1734472797000893000 + "details": { + "open_interest": 112, + "settlement_date": 1753851600000000000 + }, + "last_minute": { + "close": 240.00000000000003, + "high": 240.00000000000003, + "last_updated": 1746045300000, + "low": 240.00000000000003, + "open": 240.00000000000003, + "volume": 5 + }, + "last_quote": { + "ask": 240.50000000000003, + "ask_size": 3, + "ask_timestamp": 1746036204386194000, + "bid": 239.50000000000003, + "bid_size": 2, + "bid_timestamp": 1746035747932118000, + "last_updated": 1746046798024234200 + }, + "last_trade": { + "last_updated": 1746045242858242600, + "price": 240.00000000000003, + "size": 5 + }, + "product_code": "CB", + "session": { + "change": 21.11, + "change_percent": 0.09622134, + "close": 240.00000000000003, + "high": 241.00000000000003, + "low": 240.00000000000003, + "open": 240.00000000000003, + "previous_settlement": 219.39, + "settlement_price": 240.50000000000003, + "volume": 55 + }, + "ticker": "CBN5" } ], "status": "OK" @@ -16583,43 +16683,178 @@ "description": "The results for this request.", "items": { "properties": { - "channel": { - "description": "The CME multicast channel this event was sourced from.", - "format": "int32", - "type": "integer" - }, - "price": { - "description": "The price of the trade. This is the actual dollar value per whole contract of this trade. A trade of 100 contracts with a price of $2.00 would be worth a total dollar value of $200.00.", - "format": "double", - "type": "number" - }, - "report_sequence": { - "description": "The reporting sequence number.", - "format": "int64", - "type": "integer" - }, - "sequence_number": { - "description": "The unique sequence number assigned to this trade.", - "format": "int64", - "type": "integer" + "details": { + "properties": { + "product_code": { + "type": "string" + }, + "settlement_date": { + "description": "The day that this contract is settled.", + "format": "date", + "type": "string" + }, + "ticker": { + "type": "string" + } + }, + "type": "object" }, - "session_end_date": { - "description": "Also known as the trading date, the date of the end of the trading session, in YYYY-MM-DD format.", - "type": "string" + "last_minute": { + "properties": { + "close": { + "description": "The price at the end of the minute bar.", + "format": "double", + "type": "number" + }, + "high": { + "description": "The highest price reached in the minute bar.", + "format": "double", + "type": "number" + }, + "last_updated": { + "description": "The timestamp indicating the most recent update to the minute bar.", + "format": "int64", + "type": "integer" + }, + "low": { + "description": "The lowest price reached in the minute bar.", + "format": "double", + "type": "number" + }, + "open": { + "description": "The opening price at the start of the minute bar.", + "format": "double", + "type": "number" + }, + "timeframe": { + "description": "The timeliness of the data as determined by your subscription. One of REAL-TIME or DELAYED.", + "type": "string" + }, + "volume": { + "description": "The number of contracts traded in the minute bar.", + "format": "int64", + "type": "integer" + } + }, + "type": "object" }, - "size": { - "description": "The total number of contracts exchanged between buyers and sellers on a given trade.", - "format": "int64", - "type": "integer" + "last_quote": { + "properties": { + "ask": { + "description": "The lowest price a seller is willing to accept.", + "format": "double", + "type": "number" + }, + "ask_size": { + "description": "The number of contracts available at the ask price.", + "format": "int32", + "type": "integer" + }, + "ask_timestamp": { + "description": "The time when the best ask price was last updated.", + "format": "int64", + "type": "integer" + }, + "bid": { + "description": "The highest price a buyer is willing to pay.", + "format": "double", + "type": "number" + }, + "bid_size": { + "description": "The number of contracts available at the bid price.", + "format": "int32", + "type": "integer" + }, + "bid_timestamp": { + "description": "The time when the best bid price was last updated.", + "format": "int64", + "type": "integer" + }, + "last_updated": { + "description": "The time when the quote was generated at the exchange to nanosecond precision.", + "format": "int64", + "type": "integer" + }, + "timeframe": { + "description": "The timeliness of the data as determined by your subscription. One of REAL-TIME or DELAYED.", + "type": "string" + } + }, + "type": "object" }, - "ticker": { - "description": "The futures contract identifier, including the base symbol and contract expiration (e.g., GCJ5 for the April 2025 gold contract).", - "type": "string" + "last_trade": { + "properties": { + "last_updated": { + "description": "The time when the trade was generated at the exchange to nanosecond precision.", + "format": "int64", + "type": "integer" + }, + "price": { + "description": "The price of the trade. This is the actual dollar value per whole contract of this trade. A trade of 100 contracts with a price of $2.00 would be worth a total dollar value of $200.00.", + "format": "double", + "type": "number" + }, + "size": { + "description": "The total number of contracts exchanged between buyers and sellers on a given trade.", + "format": "int64", + "type": "integer" + }, + "timeframe": { + "description": "The timeliness of the data as determined by your subscription. One of REAL-TIME or DELAYED.", + "type": "string" + } + }, + "type": "object" }, - "timestamp": { - "description": "The time when the trade was generated at the exchange to nanosecond precision.", - "format": "int64", - "type": "integer" + "session": { + "properties": { + "change": { + "description": "The change in price during this session.", + "format": "double", + "type": "number" + }, + "change_percent": { + "description": "The percentage change in price during this session.", + "format": "double", + "type": "number" + }, + "close": { + "description": "The price at the end of the session.", + "format": "double", + "type": "number" + }, + "high": { + "description": "The highest price reached in the session.", + "format": "double", + "type": "number" + }, + "low": { + "description": "The lowest price reached in the session.", + "format": "double", + "type": "number" + }, + "open": { + "description": "The opening price at the start of the session.", + "format": "double", + "type": "number" + }, + "previous_settlement": { + "description": "The settlement price of the previous session.", + "format": "double", + "type": "number" + }, + "settlement_price": { + "description": "The final settlement price at the end of the session.", + "format": "double", + "type": "number" + }, + "volume": { + "description": "The number of contracts traded in the session.", + "format": "int64", + "type": "integer" + } + }, + "type": "object" } }, "type": "object" @@ -16678,6 +16913,249 @@ "description": "An error message." } }, + "summary": "futures_snapshot_v1 API", + "tags": [ + "default" + ] + } + }, + "/futures/v1/trades/{ticker}": { + "get": { + "description": "Retrieve comprehensive, tick-level trade data for a specified futures contract ticker over a defined time range. Each record includes the trade price, size, session start date, and precise timestamps, capturing individual trade events throughout the period. This granular data is essential for constructing aggregated bars and performing detailed analyses of intraday price movements, making it a valuable tool for backtesting, algorithmic strategy development, and market research.\n\nUse Cases: Intraday analysis, algorithmic trading, backtesting, market research.", + "operationId": "get_futures_v1_trades", + "parameters": [ + { + "description": "The time when the trade was generated at the exchange to nanosecond precision. Value must be an integer timestamp in nanoseconds, formatted 'yyyy-mm-dd', or ISO 8601/RFC 3339 (e.g. '2024-05-28T20:27:41Z').", + "in": "query", + "name": "timestamp", + "schema": { + "type": "string" + } + }, + { + "description": "Filter greater than the value. Value must be an integer timestamp in nanoseconds, formatted 'yyyy-mm-dd', or ISO 8601/RFC 3339 (e.g. '2024-05-28T20:27:41Z').", + "in": "query", + "name": "timestamp.gt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter greater than or equal to the value. Value must be an integer timestamp in nanoseconds, formatted 'yyyy-mm-dd', or ISO 8601/RFC 3339 (e.g. '2024-05-28T20:27:41Z').", + "in": "query", + "name": "timestamp.gte", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than the value. Value must be an integer timestamp in nanoseconds, formatted 'yyyy-mm-dd', or ISO 8601/RFC 3339 (e.g. '2024-05-28T20:27:41Z').", + "in": "query", + "name": "timestamp.lt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than or equal to the value. Value must be an integer timestamp in nanoseconds, formatted 'yyyy-mm-dd', or ISO 8601/RFC 3339 (e.g. '2024-05-28T20:27:41Z').", + "in": "query", + "name": "timestamp.lte", + "schema": { + "type": "string" + } + }, + { + "description": "Also known as the trading date, the date of the end of the trading session, in YYYY-MM-DD format.", + "in": "query", + "name": "session_end_date", + "schema": { + "type": "string" + } + }, + { + "description": "Limit the maximum number of results returned. Defaults to '10' if not specified. The maximum allowed limit is '49999'.", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 50000, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "A comma separated list of sort columns. For each column, append '.asc' or '.desc' to specify the sort direction. The sort column defaults to 'timestamp' if not specified. The sort order defaults to 'desc' if not specified.", + "in": "query", + "name": "sort", + "schema": { + "default": "timestamp.desc", + "type": "string" + } + }, + { + "description": "The futures contract identifier, including the base symbol and contract expiration (e.g., GCJ5 for the April 2025 gold contract).", + "in": "path", + "name": "ticker", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "example": { + "next_url": "https://api.massive.com/futures/vX/trades/ESZ4?cursor=YXA9MTczNDQ3MDk3MDAwODU5OTI2MSZhcz0yNzIzNTI4MyZsaW1pdD0xMDAwJnNlc3Npb25fZW5kX2RhdGU9MjAyNC0xMi0xNyZzb3J0PXRpbWVzdGFtcC5kZXNj", + "request_id": "a47d1beb8c11b6ae897ab76cdbbf35a3", + "results": [ + { + "price": 6052, + "report_sequence": 12033289, + "sequence_number": 27317882, + "session_end_date": "2024-12-17", + "size": 3, + "ticker": "ESZ4", + "timestamp": 1734472799000509200 + }, + { + "price": 6051.75, + "report_sequence": 12033276, + "sequence_number": 27317863, + "session_end_date": "2024-12-17", + "size": 1, + "ticker": "ESZ4", + "timestamp": 1734472798789679900 + }, + { + "price": 6052, + "report_sequence": 12033255, + "sequence_number": 27317826, + "session_end_date": "2024-12-17", + "size": 2, + "ticker": "ESZ4", + "timestamp": 1734472797000893000 + } + ], + "status": "OK" + }, + "schema": { + "properties": { + "next_url": { + "description": "If present, this value can be used to fetch the next page.", + "type": "string" + }, + "request_id": { + "description": "A request id assigned by the server.", + "type": "string" + }, + "results": { + "description": "The results for this request.", + "items": { + "properties": { + "channel": { + "description": "The CME multicast channel this event was sourced from.", + "format": "int32", + "type": "integer" + }, + "price": { + "description": "The price of the trade. This is the actual dollar value per whole contract of this trade. A trade of 100 contracts with a price of $2.00 would be worth a total dollar value of $200.00.", + "format": "double", + "type": "number" + }, + "report_sequence": { + "description": "The reporting sequence number.", + "format": "int64", + "type": "integer" + }, + "sequence_number": { + "description": "The unique sequence number assigned to this trade.", + "format": "int64", + "type": "integer" + }, + "session_end_date": { + "description": "Also known as the trading date, the date of the end of the trading session, in YYYY-MM-DD format.", + "type": "string" + }, + "size": { + "description": "The total number of contracts exchanged between buyers and sellers on a given trade.", + "format": "int64", + "type": "integer" + }, + "ticker": { + "description": "The futures contract identifier, including the base symbol and contract expiration (e.g., GCJ5 for the April 2025 gold contract).", + "type": "string" + }, + "timestamp": { + "description": "The time when the trade was generated at the exchange to nanosecond precision.", + "format": "int64", + "type": "integer" + } + }, + "required": [ + "ticker", + "timestamp", + "sequence_number", + "report_sequence", + "channel" + ], + "type": "object" + }, + "type": "array" + }, + "status": { + "description": "The status of this request's response.", + "enum": [ + "OK" + ], + "type": "string" + } + }, + "required": [ + "status", + "request_id", + "results" + ], + "type": "object" + } + } + }, + "description": "A list of results." + }, + "400": { + "content": { + "application/json": { + "schema": { + "properties": { + "error": { + "description": "A message describing the source of the error.", + "type": "string" + }, + "request_id": { + "description": "A request id assigned by the server.", + "type": "string" + }, + "status": { + "description": "The status of this request's response.", + "enum": [ + "ERROR" + ], + "type": "string" + } + }, + "required": [ + "status", + "request_id", + "error" + ], + "type": "object" + } + } + }, + "description": "An error message." + } + }, "tags": [ "default" ] @@ -17324,6 +17802,10 @@ "type": "string" } }, + "required": [ + "active", + "date" + ], "type": "object" }, "type": "array" @@ -17471,6 +17953,11 @@ "type": "string" } }, + "required": [ + "id", + "type", + "name" + ], "type": "object" }, "type": "array" @@ -18434,28 +18921,31 @@ "request_id": "a47d1beb8c11b6ae897ab76cdbbf35a3", "results": [ { - "ask_timestamp": "1734472800076125400,", - "bid_price": "2660,", - "bid_size": "1,", - "bid_timestamp": "1734472800076125400,", - "report_sequence": "2250337,", + "ask_size": 0, + "ask_timestamp": 1734472800076125400, + "bid_price": 2660, + "bid_size": 1, + "bid_timestamp": 1734472800076125400, + "channel": 360, + "report_sequence": 2250337, "sequence_number": 15357766, - "session_end_date": "2024-12-17,", - "ticker": "GCJ5,", - "timestamp": "1734472800076125400," + "session_end_date": "2024-12-17", + "ticker": "GCJ5", + "timestamp": 1734472800076125400 }, { - "ask_price": "2685.9,", - "ask_size": "1,", - "ask_timestamp": "1734472755134391800,", - "bid_price": "2684.7,", - "bid_size": "1,", - "bid_timestamp": "1734472736352455200,", - "report_sequence": "2249723,", - "sequence_number": 15354716, - "session_end_date": "2024-12-17,", - "ticker": "GCJ5,", - "timestamp": "1734472755134391800," + "ask_price": 2686, + "ask_size": 1, + "ask_timestamp": 1734472770000588000, + "bid_price": 2684.7, + "bid_size": 1, + "bid_timestamp": 1734472736352455200, + "channel": 360, + "report_sequence": 2249866, + "sequence_number": 15355476, + "session_end_date": "2024-12-17", + "ticker": "GCJ5", + "timestamp": 1734472770000588000 } ], "status": "OK" @@ -18533,6 +19023,13 @@ "type": "integer" } }, + "required": [ + "ticker", + "timestamp", + "sequence_number", + "report_sequence", + "channel" + ], "type": "object" }, "type": "array" @@ -19021,7 +19518,7 @@ "application/json": { "example": { "count": 1, - "next_url": "https://api.massive.com/v1/futures/vX/snapshot?cursor=AQANAkNCBVNQ", + "next_url": "https://api.massive.com/futures/vX/snapshot?cursor=AQANAkNCBVNQ", "request_id": "c4d50f4801874e30b63e674b844cf51f", "results": [ { @@ -19131,8 +19628,8 @@ }, "volume": { "description": "The number of contracts traded in the minute bar.", - "format": "double", - "type": "number" + "format": "int64", + "type": "integer" } }, "type": "object" @@ -19249,8 +19746,8 @@ }, "volume": { "description": "The number of contracts traded in the session.", - "format": "double", - "type": "number" + "format": "int64", + "type": "integer" } }, "type": "object" @@ -19492,6 +19989,13 @@ "type": "integer" } }, + "required": [ + "ticker", + "timestamp", + "sequence_number", + "report_sequence", + "channel" + ], "type": "object" }, "type": "array" @@ -19653,6 +20157,11 @@ "type": "string" } }, + "required": [ + "id", + "type", + "name" + ], "type": "object" }, "type": "array" @@ -20443,9 +20952,404 @@ } }, { - "description": "Unique SEC accession number for the filing (e.g., '0000950123-24-011775').", + "description": "Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD). Value must be formatted 'yyyy-mm-dd'.", + "in": "query", + "name": "filing_date", + "schema": { + "type": "string" + } + }, + { + "description": "Filter greater than the value. Value must be formatted 'yyyy-mm-dd'.", + "in": "query", + "name": "filing_date.gt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter greater than or equal to the value. Value must be formatted 'yyyy-mm-dd'.", + "in": "query", + "name": "filing_date.gte", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than the value. Value must be formatted 'yyyy-mm-dd'.", + "in": "query", + "name": "filing_date.lt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than or equal to the value. Value must be formatted 'yyyy-mm-dd'.", + "in": "query", + "name": "filing_date.lte", + "schema": { + "type": "string" + } + }, + { + "description": "Limit the maximum number of results returned. Defaults to '100' if not specified. The maximum allowed limit is '1000'.", + "in": "query", + "name": "limit", + "schema": { + "default": 100, + "maximum": 1001, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "A comma separated list of sort columns. For each column, append '.asc' or '.desc' to specify the sort direction. The sort column defaults to 'filing_date' if not specified. The sort order defaults to 'desc' if not specified.", + "in": "query", + "name": "sort", + "schema": { + "default": "filing_date.desc", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "example": { + "next_url": "https://api.massive.com/stocks/filings/vX/13-F?cursor=eyJsaW1pd...", + "request_id": "a3f8b2c1d4e5f6g7", + "results": [ + { + "accession_number": "0000950123-24-011775", + "cusip": "023135106", + "file_number": "028-04545", + "filer_cik": "0001067983", + "filing_date": "2024-11-14", + "filing_url": "https://www.sec.gov/Archives/edgar/data/1067983/0000950123-24-011775.txt", + "film_number": "241461756", + "form_type": "13F-HR", + "investment_discretion": "DFND", + "issuer_name": "AMAZON COM INC", + "market_value": 1439212920, + "other_managers": [ + "Buffett Warren E" + ], + "period": "2024-09-30", + "put_call": null, + "shares_or_principal_amount": 7724000, + "shares_or_principal_type": "SH", + "title_of_class": "COM", + "voting_authority_none": 0, + "voting_authority_shared": 0, + "voting_authority_sole": 7724000 + }, + { + "accession_number": "0000950123-24-011775", + "cusip": "025816109", + "file_number": "028-04545", + "filer_cik": "0001067983", + "filing_date": "2024-11-14", + "filing_url": "https://www.sec.gov/Archives/edgar/data/1067983/0000950123-24-011775.txt", + "film_number": "241461756", + "form_type": "13F-HR", + "investment_discretion": "DFND", + "issuer_name": "AMERICAN EXPRESS CO", + "market_value": 311864270, + "other_managers": [ + "Buffett Warren E" + ], + "period": "2024-09-30", + "put_call": null, + "shares_or_principal_amount": 1149942, + "shares_or_principal_type": "SH", + "title_of_class": "COM", + "voting_authority_none": 0, + "voting_authority_shared": 0, + "voting_authority_sole": 1149942 + } + ], + "status": "OK" + }, + "schema": { + "properties": { + "next_url": { + "description": "If present, this value can be used to fetch the next page.", + "type": "string" + }, + "request_id": { + "description": "A request id assigned by the server.", + "type": "string" + }, + "results": { + "description": "The results for this request.", + "items": { + "properties": { + "accession_number": { + "description": "Unique SEC accession number for the filing (e.g., '0000950123-24-011775').", + "type": "string" + }, + "cusip": { + "description": "The CUSIP identifier for the held security.", + "type": "string" + }, + "file_number": { + "description": "The 13F-specific file number assigned to the filer.", + "type": "string" + }, + "filer_cik": { + "description": "SEC Central Index Key (10 digits, zero-padded) of the filing entity.", + "type": "string" + }, + "filing_date": { + "description": "Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD).", + "format": "date", + "type": "string" + }, + "filing_url": { + "description": "Direct URL to the filing on the SEC EDGAR website.", + "type": "string" + }, + "film_number": { + "description": "SEC EDGAR film number for the filing.", + "type": "string" + }, + "form_type": { + "description": "SEC form type (e.g., '13F-HR' for holdings report, '13F-HR/A' for amended report).", + "type": "string" + }, + "investment_discretion": { + "description": "Type of investment discretion. Possible values: SOLE, SHARED, DFND (defined).", + "type": "string" + }, + "issuer_name": { + "description": "Name of the company whose securities are held.", + "type": "string" + }, + "market_value": { + "description": "Market value of the holding in USD.", + "format": "int64", + "type": "integer" + }, + "other_managers": { + "description": "List of names of other manager(s) sharing investment discretion over the reported holdings, if applicable.", + "items": { + "type": "string" + }, + "type": "array" + }, + "period": { + "description": "The quarter end date that the filing covers (formatted as YYYY-MM-DD).", + "format": "date", + "type": "string" + }, + "put_call": { + "description": "Indicates if the holding is a put or call option. Possible values: PUT, CALL, or empty for common stock.", + "type": "string" + }, + "shares_or_principal_amount": { + "description": "Number of shares or principal amount held.", + "format": "int64", + "type": "integer" + }, + "shares_or_principal_type": { + "description": "Type of amount reported. Possible values: SH (shares), PRN (principal amount).", + "type": "string" + }, + "title_of_class": { + "description": "Description of the class of securities held (e.g., 'COM', 'CL A').", + "type": "string" + }, + "voting_authority_none": { + "description": "Number of shares with no voting authority.", + "format": "int64", + "type": "integer" + }, + "voting_authority_shared": { + "description": "Number of shares with shared voting authority.", + "format": "int64", + "type": "integer" + }, + "voting_authority_sole": { + "description": "Number of shares with sole voting authority.", + "format": "int64", + "type": "integer" + } + }, + "type": "object" + }, + "type": "array" + }, + "status": { + "description": "The status of this request's response.", + "enum": [ + "OK" + ], + "type": "string" + } + }, + "required": [ + "status", + "request_id", + "results" + ], + "type": "object" + } + } + }, + "description": "A list of results." + }, + "400": { + "content": { + "application/json": { + "schema": { + "properties": { + "error": { + "description": "A message describing the source of the error.", + "type": "string" + }, + "request_id": { + "description": "A request id assigned by the server.", + "type": "string" + }, + "status": { + "description": "The status of this request's response.", + "enum": [ + "ERROR" + ], + "type": "string" + } + }, + "required": [ + "status", + "request_id", + "error" + ], + "type": "object" + } + } + }, + "description": "An error message." + } + }, + "tags": [ + "default" + ] + } + }, + "/stocks/filings/vX/form-3": { + "get": { + "description": "SEC Form 3 filings reporting initial statements of beneficial ownership of securities. Filed by corporate insiders (directors, officers, and 10%+ shareholders) when they first acquire a position.", + "operationId": "get_stocks_filings_vX_form-3", + "parameters": [ + { + "description": "SEC Central Index Key of the issuer company (10 digits, zero-padded).", + "in": "query", + "name": "issuer_cik", + "schema": { + "type": "string" + } + }, + { + "description": "Filter equal to any of the values. Multiple values can be specified by using a comma separated list.", + "in": "query", + "name": "issuer_cik.any_of", + "schema": { + "type": "string" + } + }, + { + "description": "SEC Central Index Key of the reporting owner (10 digits, zero-padded).", + "in": "query", + "name": "owner_cik", + "schema": { + "type": "string" + } + }, + { + "description": "Filter equal to any of the values. Multiple values can be specified by using a comma separated list.", + "in": "query", + "name": "owner_cik.any_of", + "schema": { + "type": "string" + } + }, + { + "description": "Filter for arrays that contain the value.", + "in": "query", + "name": "tickers", + "schema": { + "type": "string" + } + }, + { + "description": "Filter for arrays that contain all of the values. Multiple values can be specified by using a comma separated list.", + "in": "query", + "name": "tickers.all_of", + "schema": { + "type": "string" + } + }, + { + "description": "Filter for arrays that contain any of the values. Multiple values can be specified by using a comma separated list.", + "in": "query", + "name": "tickers.any_of", + "schema": { + "type": "string" + } + }, + { + "description": "SEC form type ('3' for initial filing, '3/A' for amendments).", + "in": "query", + "name": "form_type", + "schema": { + "type": "string" + } + }, + { + "description": "Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD). Value must be formatted 'yyyy-mm-dd'.", + "in": "query", + "name": "filing_date", + "schema": { + "type": "string" + } + }, + { + "description": "Filter greater than the value. Value must be formatted 'yyyy-mm-dd'.", + "in": "query", + "name": "filing_date.gt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter greater than or equal to the value. Value must be formatted 'yyyy-mm-dd'.", + "in": "query", + "name": "filing_date.gte", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than the value. Value must be formatted 'yyyy-mm-dd'.", + "in": "query", + "name": "filing_date.lt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than or equal to the value. Value must be formatted 'yyyy-mm-dd'.", + "in": "query", + "name": "filing_date.lte", + "schema": { + "type": "string" + } + }, + { + "description": "Filter equal to the value.", "in": "query", - "name": "accession_number", + "name": "max_ticker", "schema": { "type": "string" } @@ -20453,7 +21357,7 @@ { "description": "Filter equal to any of the values. Multiple values can be specified by using a comma separated list.", "in": "query", - "name": "accession_number.any_of", + "name": "max_ticker.any_of", "schema": { "type": "string" } @@ -20461,7 +21365,7 @@ { "description": "Filter greater than the value.", "in": "query", - "name": "accession_number.gt", + "name": "max_ticker.gt", "schema": { "type": "string" } @@ -20469,7 +21373,7 @@ { "description": "Filter greater than or equal to the value.", "in": "query", - "name": "accession_number.gte", + "name": "max_ticker.gte", "schema": { "type": "string" } @@ -20477,7 +21381,7 @@ { "description": "Filter less than the value.", "in": "query", - "name": "accession_number.lt", + "name": "max_ticker.lt", "schema": { "type": "string" } @@ -20485,7 +21389,412 @@ { "description": "Filter less than or equal to the value.", "in": "query", - "name": "accession_number.lte", + "name": "max_ticker.lte", + "schema": { + "type": "string" + } + }, + { + "description": "Filter equal to the value.", + "in": "query", + "name": "min_ticker", + "schema": { + "type": "string" + } + }, + { + "description": "Filter equal to any of the values. Multiple values can be specified by using a comma separated list.", + "in": "query", + "name": "min_ticker.any_of", + "schema": { + "type": "string" + } + }, + { + "description": "Filter greater than the value.", + "in": "query", + "name": "min_ticker.gt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter greater than or equal to the value.", + "in": "query", + "name": "min_ticker.gte", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than the value.", + "in": "query", + "name": "min_ticker.lt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than or equal to the value.", + "in": "query", + "name": "min_ticker.lte", + "schema": { + "type": "string" + } + }, + { + "description": "Limit the maximum number of results returned. Defaults to '100' if not specified. The maximum allowed limit is '10000'.", + "in": "query", + "name": "limit", + "schema": { + "default": 100, + "maximum": 10001, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "A comma separated list of sort columns. For each column, append '.asc' or '.desc' to specify the sort direction. The sort column defaults to 'filing_date' if not specified. The sort order defaults to 'desc' if not specified.", + "in": "query", + "name": "sort", + "schema": { + "default": "filing_date.desc", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "example": { + "count": 1, + "next_url": "https://api.massive.com/stocks/filings/vX/form-3?cursor=eyJsaW1pd...", + "request_id": "047c7035a86042b1925118e5f68d81b0", + "results": [ + { + "accession_number": "0001628280-26-022046", + "aff_10b5_one": null, + "date_of_original_submission": null, + "direct_or_indirect": "D", + "exercise_date": null, + "exercise_price": null, + "filing_date": "2026-03-30", + "filing_url": "https://www.sec.gov/Archives/edgar/data/1903508/0001628280-26-022046.txt", + "footnotes": [ + { + "description": "The options granted on May 17, 2022 vested 100% on the third anniversary of the grant date.", + "id": "F1" + }, + { + "description": "The exercise price of the options granted on May 17, 2022 was GPB 8.85, or approximately $11.80 based on a GBP to USD exchange rate as of March 27, 2026 of 1.3336.", + "id": "F2" + } + ], + "form_type": "3", + "is_director": false, + "is_officer": true, + "is_other": false, + "is_ten_percent_owner": false, + "issuer_cik": "0001903508", + "issuer_name": "Public Policy Holding Company, Inc.", + "nature_of_ownership": null, + "not_subject_to_section_16": null, + "officer_title": "Chief Administrative Officer", + "owner_cik": "0002125791", + "owner_name": "Mazzanti Matthew Ross", + "period_of_report": "2026-03-20", + "remarks": null, + "security_title": "Options", + "security_type": "derivative", + "shares_owned": null, + "tickers": [ + "PPHC" + ], + "underlying_security_shares": 9000, + "underlying_security_title": "Common Stock, $0.001 par value" + } + ], + "status": "OK" + }, + "schema": { + "properties": { + "next_url": { + "description": "If present, this value can be used to fetch the next page.", + "type": "string" + }, + "request_id": { + "description": "A request id assigned by the server.", + "type": "string" + }, + "results": { + "description": "The results for this request.", + "items": { + "properties": { + "accession_number": { + "description": "Unique SEC accession number for the filing (e.g., '0001209191-25-012345').", + "type": "string" + }, + "aff_10b5_one": { + "description": "Whether the transaction was made pursuant to a Rule 10b5-1 trading plan.", + "type": "boolean" + }, + "date_of_original_submission": { + "description": "Date of the original filing submission for amendment filings (3/A). Null for initial filings (formatted as YYYY-MM-DD).", + "format": "date", + "type": "string" + }, + "direct_or_indirect": { + "description": "Whether ownership is direct ('D') or indirect ('I').", + "type": "string" + }, + "exercise_date": { + "description": "Date exercisable for derivative securities (formatted as YYYY-MM-DD).", + "format": "date", + "type": "string" + }, + "exercise_price": { + "description": "Exercise or conversion price of derivative securities in USD.", + "format": "double", + "type": "number" + }, + "filing_date": { + "description": "Date when the filing was submitted to the SEC (formatted as YYYY-MM-DD).", + "format": "date", + "type": "string" + }, + "filing_url": { + "description": "Direct URL to the filing on the SEC EDGAR website.", + "type": "string" + }, + "footnotes": { + "description": "List of footnotes from the filing that are relevant to this row, each with an id and description.", + "items": { + "properties": { + "description": { + "type": "string" + }, + "id": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "form_type": { + "description": "SEC form type ('3' for initial filing, '3/A' for amendments).", + "type": "string" + }, + "is_director": { + "description": "Whether the reporting owner is a director of the issuer.", + "type": "boolean" + }, + "is_officer": { + "description": "Whether the reporting owner is an officer of the issuer.", + "type": "boolean" + }, + "is_other": { + "description": "Whether the reporting owner has another relationship with the issuer.", + "type": "boolean" + }, + "is_ten_percent_owner": { + "description": "Whether the reporting owner holds 10% or more of a class of equity securities.", + "type": "boolean" + }, + "issuer_cik": { + "description": "SEC Central Index Key of the issuer company (10 digits, zero-padded).", + "type": "string" + }, + "issuer_name": { + "description": "Name of the issuer company as reported in the filing.", + "type": "string" + }, + "nature_of_ownership": { + "description": "Nature of indirect ownership (e.g., 'By Trust', 'By Spouse').", + "type": "string" + }, + "not_subject_to_section_16": { + "description": "Whether the reporting owner is not subject to Section 16 of the Securities Exchange Act.", + "type": "boolean" + }, + "officer_title": { + "description": "Title of the officer, if the reporting owner is an officer.", + "type": "string" + }, + "owner_cik": { + "description": "SEC Central Index Key of the reporting owner (10 digits, zero-padded).", + "type": "string" + }, + "owner_name": { + "description": "Name of the reporting owner (individual or entity).", + "type": "string" + }, + "period_of_report": { + "description": "Date of the event triggering the filing (formatted as YYYY-MM-DD).", + "format": "date", + "type": "string" + }, + "remarks": { + "description": "Additional remarks included in the filing.", + "type": "string" + }, + "security_title": { + "description": "Title or description of the security (e.g., 'Common Stock', 'Stock Option').", + "type": "string" + }, + "security_type": { + "description": "Type of security ('non-derivative' or 'derivative').", + "type": "string" + }, + "shares_owned": { + "description": "Number of shares beneficially owned.", + "format": "double", + "type": "number" + }, + "tickers": { + "description": "A list of ticker symbols for the issuer company. Multiple symbols may indicate different share classes.", + "items": { + "type": "string" + }, + "type": "array" + }, + "underlying_security_shares": { + "description": "Number of underlying shares for derivative holdings.", + "format": "double", + "type": "number" + }, + "underlying_security_title": { + "description": "Title of the underlying security for derivative holdings.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "status": { + "description": "The status of this request's response.", + "enum": [ + "OK" + ], + "type": "string" + } + }, + "required": [ + "status", + "request_id", + "results" + ], + "type": "object" + } + } + }, + "description": "A list of results." + }, + "400": { + "content": { + "application/json": { + "schema": { + "properties": { + "error": { + "description": "A message describing the source of the error.", + "type": "string" + }, + "request_id": { + "description": "A request id assigned by the server.", + "type": "string" + }, + "status": { + "description": "The status of this request's response.", + "enum": [ + "ERROR" + ], + "type": "string" + } + }, + "required": [ + "status", + "request_id", + "error" + ], + "type": "object" + } + } + }, + "description": "An error message." + } + }, + "tags": [ + "default" + ] + } + }, + "/stocks/filings/vX/form-4": { + "get": { + "description": "SEC Form 4 filings reporting changes in beneficial ownership of securities. Filed by corporate insiders (directors, officers, and 10%+ shareholders) within two business days of a transaction.", + "operationId": "get_stocks_filings_vX_form-4", + "parameters": [ + { + "description": "SEC Central Index Key of the issuer company (10 digits, zero-padded).", + "in": "query", + "name": "issuer_cik", + "schema": { + "type": "string" + } + }, + { + "description": "Filter equal to any of the values. Multiple values can be specified by using a comma separated list.", + "in": "query", + "name": "issuer_cik.any_of", + "schema": { + "type": "string" + } + }, + { + "description": "SEC Central Index Key of the reporting owner (10 digits, zero-padded).", + "in": "query", + "name": "owner_cik", + "schema": { + "type": "string" + } + }, + { + "description": "Filter equal to any of the values. Multiple values can be specified by using a comma separated list.", + "in": "query", + "name": "owner_cik.any_of", + "schema": { + "type": "string" + } + }, + { + "description": "Filter for arrays that contain the value.", + "in": "query", + "name": "tickers", + "schema": { + "type": "string" + } + }, + { + "description": "Filter for arrays that contain all of the values. Multiple values can be specified by using a comma separated list.", + "in": "query", + "name": "tickers.all_of", + "schema": { + "type": "string" + } + }, + { + "description": "Filter for arrays that contain any of the values. Multiple values can be specified by using a comma separated list.", + "in": "query", + "name": "tickers.any_of", + "schema": { + "type": "string" + } + }, + { + "description": "SEC form type ('4' for standard filing, '4/A' for amendments).", + "in": "query", + "name": "form_type", "schema": { "type": "string" } @@ -20531,12 +21840,116 @@ } }, { - "description": "Limit the maximum number of results returned. Defaults to '100' if not specified. The maximum allowed limit is '1000'.", + "description": "SEC transaction code indicating the type of transaction (e.g., 'P' for purchase, 'S' for sale, 'A' for grant/award, 'M' for exercise/conversion).", + "in": "query", + "name": "transaction_code", + "schema": { + "type": "string" + } + }, + { + "description": "Filter equal to the value.", + "in": "query", + "name": "max_ticker", + "schema": { + "type": "string" + } + }, + { + "description": "Filter equal to any of the values. Multiple values can be specified by using a comma separated list.", + "in": "query", + "name": "max_ticker.any_of", + "schema": { + "type": "string" + } + }, + { + "description": "Filter greater than the value.", + "in": "query", + "name": "max_ticker.gt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter greater than or equal to the value.", + "in": "query", + "name": "max_ticker.gte", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than the value.", + "in": "query", + "name": "max_ticker.lt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than or equal to the value.", + "in": "query", + "name": "max_ticker.lte", + "schema": { + "type": "string" + } + }, + { + "description": "Filter equal to the value.", + "in": "query", + "name": "min_ticker", + "schema": { + "type": "string" + } + }, + { + "description": "Filter equal to any of the values. Multiple values can be specified by using a comma separated list.", + "in": "query", + "name": "min_ticker.any_of", + "schema": { + "type": "string" + } + }, + { + "description": "Filter greater than the value.", + "in": "query", + "name": "min_ticker.gt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter greater than or equal to the value.", + "in": "query", + "name": "min_ticker.gte", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than the value.", + "in": "query", + "name": "min_ticker.lt", + "schema": { + "type": "string" + } + }, + { + "description": "Filter less than or equal to the value.", + "in": "query", + "name": "min_ticker.lte", + "schema": { + "type": "string" + } + }, + { + "description": "Limit the maximum number of results returned. Defaults to '100' if not specified. The maximum allowed limit is '10000'.", "in": "query", "name": "limit", "schema": { "default": 100, - "maximum": 1001, + "maximum": 10001, "minimum": 1, "type": "integer" } @@ -20556,64 +21969,55 @@ "content": { "application/json": { "example": { - "next_url": "https://api.massive.com/stocks/filings/vX/13-F?cursor=eyJsaW1pd...", - "request_id": "a3f8b2c1d4e5f6g7", + "next_url": "https://api.massive.com/stocks/filings/vX/form-4?cursor=eyJsaW1pd...", + "request_id": "047c7035a86042b1925118e5f68d81b0", "results": [ { - "accession_number": "0000950123-24-011775", - "cusip": "023135106", - "file_number": "028-04545", - "filer_cik": "0001067983", - "filing_date": "2024-11-14", - "filing_url": "https://www.sec.gov/Archives/edgar/data/1067983/0000950123-24-011775.txt", - "film_number": "241461756", - "form_type": "13F-HR", - "investment_discretion": "DFND", - "issuer_name": "AMAZON COM INC", - "market_value": 1439212920, - "other_managers": [ - "Buffett Warren E" - ], - "period": "2024-09-30", - "put_call": null, - "shares_or_principal_amount": 7724000, - "shares_or_principal_type": "SH", - "tickers": [ - "BRK.A", - "BRK.B" - ], - "title_of_class": "COM", - "voting_authority_none": 0, - "voting_authority_shared": 0, - "voting_authority_sole": 7724000 - }, - { - "accession_number": "0000950123-24-011775", - "cusip": "025816109", - "file_number": "028-04545", - "filer_cik": "0001067983", - "filing_date": "2024-11-14", - "filing_url": "https://www.sec.gov/Archives/edgar/data/1067983/0000950123-24-011775.txt", - "film_number": "241461756", - "form_type": "13F-HR", - "investment_discretion": "DFND", - "issuer_name": "AMERICAN EXPRESS CO", - "market_value": 311864270, - "other_managers": [ - "Buffett Warren E" + "accession_number": "0002123147-26-000002", + "aff_10b5_one": false, + "date_of_original_submission": null, + "deemed_execution_date": "2026-03-27", + "direct_or_indirect": "D", + "equity_swap_involved": false, + "exercise_date": "2026-03-27", + "exercise_price": 88.167, + "expiration_date": "2026-03-27", + "filing_date": "2026-03-30", + "filing_url": "https://www.sec.gov/Archives/edgar/data/1469395/0002123147-26-000002.txt", + "footnotes": [ + { + "description": "These shares were acquired at a price of 4955 argentine pesos per share. For reporting purposes, the exercise price has been converted to US dollars based on the exchange rate reported by Banco de la Nacion Argentina for the date of the acquisition, which was 1405 argentine pesos per US dollar. Then multiplied by 25, the Par value or rate of common shares to one ADR.", + "id": "F1" + } ], - "period": "2024-09-30", - "put_call": null, - "shares_or_principal_amount": 1149942, - "shares_or_principal_type": "SH", + "form_type": "4", + "is_director": false, + "is_officer": true, + "is_other": false, + "is_ten_percent_owner": false, + "issuer_cik": "0001469395", + "issuer_name": "Pampa Energy Inc.", + "not_subject_to_section_16": false, + "officer_title": "Chief Financial Officer", + "owner_cik": "0002123147", + "owner_name": "Zuberbuhler Adolfo Fernando", + "period_of_report": "2026-03-27", + "record_type": "transaction", + "security_title": "Common Stock, $25 Par Value", + "security_type": "derivative", + "shares_owned_following_transaction": 2759, "tickers": [ - "BRK.A", - "BRK.B" + "PAM" ], - "title_of_class": "COM", - "voting_authority_none": 0, - "voting_authority_shared": 0, - "voting_authority_sole": 1149942 + "transaction_acquired_disposed": "A", + "transaction_code": "A", + "transaction_date": "2026-03-27", + "transaction_price_per_share": 88.167, + "transaction_shares": 12923, + "transaction_timeliness": "O", + "transaction_value": 1139382.141, + "underlying_security_shares": 12923, + "underlying_security_title": "PAMP" } ], "status": "OK" @@ -20633,19 +22037,44 @@ "items": { "properties": { "accession_number": { - "description": "Unique SEC accession number for the filing (e.g., '0000950123-24-011775').", + "description": "Unique SEC accession number for the filing (e.g., '0001209191-25-012345').", "type": "string" }, - "cusip": { - "description": "The CUSIP identifier for the held security.", + "aff_10b5_one": { + "description": "Whether the transaction was made pursuant to a Rule 10b5-1 trading plan.", + "type": "boolean" + }, + "date_of_original_submission": { + "description": "Date of the original filing submission for amendment filings (4/A). Null for standard filings (formatted as YYYY-MM-DD).", + "format": "date", "type": "string" }, - "file_number": { - "description": "The 13F-specific file number assigned to the filer.", + "deemed_execution_date": { + "description": "Deemed execution date if different from transaction date (formatted as YYYY-MM-DD).", + "format": "date", "type": "string" }, - "filer_cik": { - "description": "SEC Central Index Key (10 digits, zero-padded) of the filing entity.", + "direct_or_indirect": { + "description": "Whether ownership is direct ('D') or indirect ('I').", + "type": "string" + }, + "equity_swap_involved": { + "description": "Whether an equity swap was involved in the transaction.", + "type": "boolean" + }, + "exercise_date": { + "description": "Date exercisable for derivative securities (formatted as YYYY-MM-DD).", + "format": "date", + "type": "string" + }, + "exercise_price": { + "description": "Exercise or conversion price of derivative securities in USD.", + "format": "double", + "type": "number" + }, + "expiration_date": { + "description": "Expiration date for derivative securities (formatted as YYYY-MM-DD).", + "format": "date", "type": "string" }, "filing_date": { @@ -20657,77 +22086,142 @@ "description": "Direct URL to the filing on the SEC EDGAR website.", "type": "string" }, - "film_number": { - "description": "SEC EDGAR film number for the filing.", - "type": "string" + "footnotes": { + "description": "List of footnotes from the filing that are relevant to this row, each with an id and description.", + "items": { + "properties": { + "description": { + "type": "string" + }, + "id": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" }, "form_type": { - "description": "SEC form type (e.g., '13F-HR' for holdings report, '13F-HR/A' for amended report).", + "description": "SEC form type ('4' for standard filing, '4/A' for amendments).", "type": "string" }, - "investment_discretion": { - "description": "Type of investment discretion. Possible values: SOLE, SHARED, DFND (defined).", + "is_director": { + "description": "Whether the reporting owner is a director of the issuer.", + "type": "boolean" + }, + "is_officer": { + "description": "Whether the reporting owner is an officer of the issuer.", + "type": "boolean" + }, + "is_other": { + "description": "Whether the reporting owner has another relationship with the issuer.", + "type": "boolean" + }, + "is_ten_percent_owner": { + "description": "Whether the reporting owner holds 10% or more of a class of equity securities.", + "type": "boolean" + }, + "issuer_cik": { + "description": "SEC Central Index Key of the issuer company (10 digits, zero-padded).", "type": "string" }, "issuer_name": { - "description": "Name of the company whose securities are held.", + "description": "Name of the issuer company as reported in the filing.", "type": "string" }, - "market_value": { - "description": "Market value of the holding in USD.", - "format": "int64", - "type": "integer" + "nature_of_ownership": { + "description": "Nature of indirect ownership (e.g., 'By Trust', 'By Spouse').", + "type": "string" }, - "other_managers": { - "description": "List of names of other manager(s) sharing investment discretion over the reported holdings, if applicable.", - "items": { - "type": "string" - }, - "type": "array" + "not_subject_to_section_16": { + "description": "Whether the reporting owner is not subject to Section 16 of the Securities Exchange Act.", + "type": "boolean" }, - "period": { - "description": "The quarter end date that the filing covers (formatted as YYYY-MM-DD).", + "officer_title": { + "description": "Title of the officer, if the reporting owner is an officer.", + "type": "string" + }, + "owner_cik": { + "description": "SEC Central Index Key of the reporting owner (10 digits, zero-padded).", + "type": "string" + }, + "owner_name": { + "description": "Name of the reporting owner (individual or entity).", + "type": "string" + }, + "period_of_report": { + "description": "Date of the event triggering the filing (formatted as YYYY-MM-DD).", "format": "date", "type": "string" }, - "put_call": { - "description": "Indicates if the holding is a put or call option. Possible values: PUT, CALL, or empty for common stock.", + "record_type": { + "description": "Type of record in the filing (e.g., 'transaction', 'holding').", "type": "string" }, - "shares_or_principal_amount": { - "description": "Number of shares or principal amount held.", - "format": "int64", - "type": "integer" + "remarks": { + "description": "Additional remarks included in the filing.", + "type": "string" }, - "shares_or_principal_type": { - "description": "Type of amount reported. Possible values: SH (shares), PRN (principal amount).", + "security_title": { + "description": "Title or description of the security (e.g., 'Common Stock', 'Stock Option').", + "type": "string" + }, + "security_type": { + "description": "Type of security ('non-derivative' or 'derivative').", "type": "string" }, + "shares_owned_following_transaction": { + "description": "Total shares beneficially owned after the transaction.", + "format": "double", + "type": "number" + }, "tickers": { - "description": "A list of ticker symbols for the filing entity. Multiple symbols may indicate different share classes (e.g., BRK.A and BRK.B for Berkshire Hathaway).", + "description": "A list of ticker symbols for the issuer company. Multiple symbols may indicate different share classes.", "items": { "type": "string" }, "type": "array" }, - "title_of_class": { - "description": "Description of the class of securities held (e.g., 'COM', 'CL A').", + "transaction_acquired_disposed": { + "description": "Whether shares were acquired ('A') or disposed of ('D').", "type": "string" }, - "voting_authority_none": { - "description": "Number of shares with no voting authority.", - "format": "int64", - "type": "integer" + "transaction_code": { + "description": "SEC transaction code indicating the type of transaction (e.g., 'P' for purchase, 'S' for sale, 'A' for grant/award, 'M' for exercise/conversion).", + "type": "string" }, - "voting_authority_shared": { - "description": "Number of shares with shared voting authority.", - "format": "int64", - "type": "integer" + "transaction_date": { + "description": "Date of the transaction (formatted as YYYY-MM-DD).", + "format": "date", + "type": "string" }, - "voting_authority_sole": { - "description": "Number of shares with sole voting authority.", - "format": "int64", - "type": "integer" + "transaction_price_per_share": { + "description": "Price per share of the transaction in USD.", + "format": "double", + "type": "number" + }, + "transaction_shares": { + "description": "Number of shares involved in the transaction.", + "format": "double", + "type": "number" + }, + "transaction_timeliness": { + "description": "Timeliness of the filing: 'O' (on time) or 'L' (late).", + "type": "string" + }, + "transaction_value": { + "description": "Total value of the transaction in USD (transaction_shares x transaction_price_per_share). Null when shares or price is not reported.", + "format": "double", + "type": "number" + }, + "underlying_security_shares": { + "description": "Number of underlying shares for derivative transactions.", + "format": "double", + "type": "number" + }, + "underlying_security_title": { + "description": "Title of the underlying security for derivative transactions.", + "type": "string" } }, "type": "object" @@ -22089,6 +23583,9 @@ "type": "number" } }, + "required": [ + "timeframe" + ], "type": "object" }, "type": "array" @@ -24719,6 +26216,10 @@ "type": "string" } }, + "required": [ + "ticker", + "date" + ], "type": "object" }, "type": "array" @@ -25055,6 +26556,9 @@ "type": "string" } }, + "required": [ + "taxonomy" + ], "type": "object" }, "type": "array" @@ -25400,6 +26904,9 @@ "type": "string" } }, + "required": [ + "distribution_type" + ], "type": "object" }, "type": "array" @@ -25560,6 +27067,11 @@ "type": "string" } }, + "required": [ + "id", + "type", + "name" + ], "type": "object" }, "type": "array" @@ -25905,6 +27417,11 @@ "type": "string" } }, + "required": [ + "settlement_date", + "avg_daily_volume", + "days_to_cover" + ], "type": "object" }, "type": "array" @@ -26257,6 +27774,9 @@ "type": "number" } }, + "required": [ + "date" + ], "type": "object" }, "type": "array" @@ -26524,6 +28044,9 @@ "type": "string" } }, + "required": [ + "adjustment_type" + ], "type": "object" }, "type": "array" @@ -51267,6 +52790,7 @@ "id": "191450340", "participant_timestamp": 1625097600103000000, "price": 35060, + "received_timestamp": 1625097600125000000, "size": 1.0434526 }, { @@ -51277,6 +52801,7 @@ "id": "191450341", "participant_timestamp": 1625097600368000000, "price": 35059.99, + "received_timestamp": 1625097600390000000, "size": 0.0058883 } ], @@ -51330,6 +52855,15 @@ "format": "double", "type": "number" }, + "received_timestamp": { + "description": "The nanosecond accuracy timestamp of when the tick was received by Massive.", + "format": "int64", + "type": "integer", + "x-polygon-go-type": { + "name": "INanoseconds", + "path": "github.com/polygon-io/ptime" + } + }, "size": { "description": "The size of a trade (also known as volume).", "format": "double", @@ -51357,7 +52891,7 @@ } }, "text/csv": { - "example": "conditions,exchange,id,participant_timestamp,price,size\n1,1,191450340,1625097600103000000,35060,1.0434526\n2,1,191450341,1625097600368000000,35059.99,0.0058883\n", + "example": "conditions,exchange,id,participant_timestamp,price,received_timestamp,size\n1,1,191450340,1625097600103000000,35060,1625097600125000000,1.0434526\n2,1,191450341,1625097600368000000,35059.99,1625097600390000000,0.0058883\n", "schema": { "type": "string" } @@ -51515,6 +53049,7 @@ "exchange": 46, "participant_timestamp": 1401715883806000000, "price": 6.91, + "sequence_number": 1, "sip_timestamp": 1401715883806000000, "size": 1 }, @@ -51525,6 +53060,7 @@ "exchange": 67, "participant_timestamp": 1401716547786000000, "price": 7.2, + "sequence_number": 2, "sip_timestamp": 1401716547786000000, "size": 1 } @@ -51579,6 +53115,11 @@ "format": "double", "type": "number" }, + "sequence_number": { + "description": "The sequence number represents the sequence in which message events happened. These are increasing and unique per ticker symbol, but will not always be consecutive (e.g. 1, 2, 6, 9, 10, 11).", + "format": "int64", + "type": "integer" + }, "sip_timestamp": { "description": "The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this trade from the exchange which produced it.", "format": "int64", @@ -51616,7 +53157,7 @@ } }, "text/csv": { - "example": "conditions,exchange,participant_timestamp,price,sip_timestamp,size\n,46,1401715883806000000,6.91,1401715883806000000,1\n209,67,1401716547786000000,7.2,1401716547786000000,1\n", + "example": "conditions,exchange,participant_timestamp,price,sequence_number,sip_timestamp,size\n,46,1401715883806000000,6.91,1,1401715883806000000,1\n209,67,1401716547786000000,7.2,2,1401716547786000000,1\n", "schema": { "type": "string" }