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 433 12/17/2023
2.0.3 324 12/17/2023
2.0.2 337 12/17/2023
2.0.1 331 12/17/2023
2.0.0 350 12/16/2023
1.1.0 600 7/10/2023
1.0.0 551 6/18/2023
0.2.0-beta 486 6/17/2023
0.1.13-beta 874 12/20/2019
0.1.12-beta 737 12/20/2019
0.1.11-beta 720 12/19/2019
0.1.10-beta 753 12/6/2019
0.1.9-beta 738 12/5/2019
0.1.8-beta 746 12/2/2019
0.1.7-beta 826 3/25/2019
0.1.6-beta 782 3/25/2019
0.1.5-beta 795 3/25/2019
0.1.4-beta 825 3/25/2019
0.1.3-beta 798 3/25/2019
0.1.2-beta 833 3/23/2019
0.1.0-beta 821 3/23/2019
0.0.4-alpha 756 3/23/2019
0.0.3-alpha 803 3/18/2019
0.0.2-alpha 799 3/18/2019
0.0.1-alpha 835 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.