PublicFunctions/Get-FMPCOTReportList.ps1
function Get-FMPCOTReportList { <# .SYNOPSIS Retrieves a comprehensive list of available Commitment of Traders (COT) reports using the Financial Modeling Prep API. .DESCRIPTION The Get-FMPCOTReportList function fetches an overview of the various COT reports available by commodity or futures contract. The returned data includes details such as the report symbol and name for each market segment. If no API key is provided, the function attempts to retrieve it using the Get-FMPCredential function and will prompt the user if necessary. .PARAMETER ApiKey Specifies your Financial Modeling Prep API key. If omitted, the function will attempt to retrieve it using Get-FMPCredential and prompt the user if necessary. .EXAMPLE Get-FMPCOTReportList This example retrieves the list of available Commitment of Traders reports using your Financial Modeling Prep API key. .NOTES This is a premium endpoint, and requires a paid subscription. This function utilizes the Financial Modeling Prep API's COT Report List endpoint. For more information, visit: https://financialmodelingprep.com #> [CmdletBinding()] Param ( [Parameter(Mandatory = $false)] [string] $ApiKey = (Get-FMPCredential) ) Begin { if (-not $ApiKey) { $ApiKey = Read-Host "Please enter your Financial Modeling Prep API key" } $baseUrl = "https://financialmodelingprep.com/stable/commitment-of-traders-list" } Process { $url = "{0}?apikey={1}" -f $baseUrl, $ApiKey $headers = @{ "Upgrade-Insecure-Requests" = "1" } try { $response = Invoke-RestMethod -Uri $url -Method Get -Headers $headers -ErrorAction Stop return $response } catch { throw "Error retrieving COT report list data: $_" } } }; |