MatthiWare.FinancialModelingPrep 0.1.2

There is a newer version of this package available.
See the version list below for details.
dotnet add package MatthiWare.FinancialModelingPrep --version 0.1.2                
NuGet\Install-Package MatthiWare.FinancialModelingPrep -Version 0.1.2                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="MatthiWare.FinancialModelingPrep" Version="0.1.2" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add MatthiWare.FinancialModelingPrep --version 0.1.2                
#r "nuget: MatthiWare.FinancialModelingPrep, 0.1.2"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install MatthiWare.FinancialModelingPrep as a Cake Addin
#addin nuget:?package=MatthiWare.FinancialModelingPrep&version=0.1.2

// Install MatthiWare.FinancialModelingPrep as a Cake Tool
#tool nuget:?package=MatthiWare.FinancialModelingPrep&version=0.1.2                

.NET Nuget

FinancialModelingPrep.NET

.NET 5 API Client For https://financialmodelingprep.com/ API written in C#

Installation

PM> Install-Package MatthiWare.FinancialModelingPrep

Quick Start

Register FinancialModelingPrepApiClient in Dependency Injection provider

You can find your API Key here https://financialmodelingprep.com/developer/docs/dashboard

using MatthiWare.FinancialModelingPrep;

Services.AddFinancialModelingPrepApiClient(new FinancialModelingPrepOptions() 
{
    ApiKey = "API-KEY-HERE"
});

var api = ServiceProvider.GetRequiredService<IFinancialModelingPrepApiClient>();

// do something with api like getting the latest Apple Stock Quote
var quoteResult = await api.CompanyValuation.GetQuoteAsync("AAPL");

Create FMP API Client using Factory (without Dependency Injection)

using MatthiWare.FinancialModelingPrep;

var api = FinancialModelingPrepApiClientFactory.CreateClient(new FinancialModelingPrepOptions());

// do something with api like getting the latest Apple Stock Quote
var quoteResult = await api.CompanyValuation.GetQuoteAsync("AAPL");

Get Stock Price Quote

var response = await api.CompanyValuation.GetQuoteAsync("AAPL");

// Display Apple Stock Quote
Console.WriteLine($"$AAPL is currently trading at: {response.Data.Price}");

All API Responses are wrapped in an ApiResponse<T> object.

public class ApiResponse<T>
{
    /// <summary>
    /// Error message if any occured
    /// </summary>
    public string Error { get; }

    /// <summary>
    /// True if there was an error with the request otherwise false
    /// </summary>
    public bool HasError { get; }

    /// <summary>
    /// The FMP API response object <see cref="T"/>
    /// </summary>
    public T Data { get; }
}

Example:

var response = await api.CompanyValuation.GetQuoteAsync("AAPL");

// Display Apple Stock Quote
if (!quoteResult.HasError)
{
   Console.WriteLine($"$AAPL is currently trading at: {response.Data.Price}");
} 
else 
{
   Console.WriteLine($"Error occured, message: {response.Error}");
}

Covered Endpoints

  • Company Valuation
  • Advanced Data
  • Insider Trading (Not yet covered)
  • Calendars
  • Instituational Fund
  • Stock Time Series (Partially covered)
  • Technical Indicators (Not yet covered)
  • Market Indexes (Partially covered)
  • Alternative Data (Not yet covered)
  • Commodities (Not yet covered)
  • ETF (Not yet covered)
  • Mutual Funds (Not yet covered)
  • Euronext (Not yet covered)
  • TSX (Not yet covered)
  • Stock Market (Not yet covered)
  • Cryptocurrencies (Not yet covered)
  • Forex (Not yet covered)

Contribute

Create a PR where you add or improve an Endpoint

Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.3.0 497 6/8/2024
0.2.2 1,316 2/8/2023
0.2.1 283 2/6/2023
0.2.0 375 11/19/2022
0.1.14 510 10/2/2022
0.1.13 487 7/10/2022
0.1.12 497 6/17/2022
0.1.11 445 6/16/2022
0.1.10 443 6/8/2022
0.1.9 558 2/19/2022
0.1.8 375 11/19/2021
0.1.7 341 11/5/2021
0.1.6 333 10/2/2021
0.1.5 337 8/9/2021
0.1.4 392 7/11/2021
0.1.3 399 6/4/2021
0.1.2 371 5/31/2021
0.1.1 357 5/24/2021
0.1.0 372 5/20/2021

- Allow null values in calendar response
- Add Factory Method to create client
- Register dependencies as transient instead of scoped