devdeer.CoffeeCupApiAccess 2.0.4

dotnet add package devdeer.CoffeeCupApiAccess --version 2.0.4                
NuGet\Install-Package devdeer.CoffeeCupApiAccess -Version 2.0.4                
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="devdeer.CoffeeCupApiAccess" Version="2.0.4" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add devdeer.CoffeeCupApiAccess --version 2.0.4                
#r "nuget: devdeer.CoffeeCupApiAccess, 2.0.4"                
#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 devdeer.CoffeeCupApiAccess as a Cake Addin
#addin nuget:?package=devdeer.CoffeeCupApiAccess&version=2.0.4

// Install devdeer.CoffeeCupApiAccess as a Cake Tool
#tool nuget:?package=devdeer.CoffeeCupApiAccess&version=2.0.4                

devdeer.CoffeeCupApiAccess

Disclaimer

We are using this package in our own projects. So it is not only a playground but also production code. We are trying to keep the quality high but we are also humans. So if you find any issues please report them or even better: fix them and create a pull request.

Summary

This package contains logic to access CoffeeCup API with .NET 6 onwards.

Usage

In order to start using the logic in this package your first need to ensure that your DI container is configured correctly.

The following example shows a typical DI configuration:

using devdeer.CoffeeCupApiAccess.Logic.Core;

services.AddOptions<ApiOptions>()
    .Configure<IConfiguration>(settings, configuration) =>
    {
        configuration.GetSection("CoffeeCupAccess").Bind(settings);
    });     
services.AddHttpClient<CoffeeCupAccess>(
    c =>
    {
        var options = GetRequiredService<IOptions<ApiOptions>>();
        c.BaseAddress = new Uri("https://api.coffeecupapp.com");
        c.DefaultRequestHeaders.Add("Origin", options.Value.Origin);
    });

This assumes that your appsettings.json contains a section like this:

{
    "CoffeeCupAccess": {
        "CoffeeCupApiVersion": "v1",
        "CoffeeCupApiClientId": "",
        "CoffeeCupApiClientSecret": "",
        "CoffeeCupUsername": "",
        "CoffeeCupPassword": "",
        "CoffeeCupOrigin": ""
    }
}

About DEVDEER

DEVDEER is a company from Magdeburg, Germany which is specialized in consulting, project management and development. We are very focussed on Microsoft Azure as a platform to run our products and solutions in the cloud. So all of our backend components usually runs in this environment and is developed using .NET. In the frontend area we are using react and a huge bunch of packages to build our UIs.

You can find us online:

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  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 is compatible.  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
2.0.4 489 12/17/2023
2.0.3 342 12/17/2023
2.0.2 354 12/17/2023
2.0.1 347 12/17/2023
2.0.0 368 12/16/2023
1.1.0 619 7/10/2023
1.0.0 571 6/18/2023
0.2.0-beta 502 6/17/2023
0.1.13-beta 889 12/20/2019
0.1.12-beta 750 12/20/2019
0.1.11-beta 733 12/19/2019
0.1.10-beta 768 12/6/2019
0.1.9-beta 751 12/5/2019
0.1.8-beta 760 12/2/2019
0.1.7-beta 841 3/25/2019
0.1.6-beta 795 3/25/2019
0.1.5-beta 810 3/25/2019
0.1.4-beta 838 3/25/2019
0.1.3-beta 813 3/25/2019
0.1.2-beta 846 3/23/2019
0.1.0-beta 835 3/23/2019
0.0.4-alpha 770 3/23/2019
0.0.3-alpha 816 3/18/2019
0.0.2-alpha 812 3/18/2019
0.0.1-alpha 850 3/17/2019

- Switched to .NET 6 + .NET 8
           - Query methods now retrieve arrays instead of IEnumerables.
           - Using dependency injection.
           - Switched to ILogger for traces.
           - Absence results can be retrieved.
           - Vacation budget results can be retrieved.
           - BREAKING: Using configuration options instead of RequestModel.