Skip to content

trbngr/infusio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Infusio.

A Functional Infusionsoft API Client

Infusio is a new .net Infusionsoft client.

The majority of the code is generated from the official Infusionsoft API documentation.

Features:

  • All operations are composable. This means that you can chain all operations together to form one 'master' operation using LINQ syntax. LINQ Query. LINQ Methods.
  • All operations are completely lazy. Nothing actually executes until you call Run. Example.
  • For easy debugging, all operations have the ability to output logs.
  • Speaking of logging, you can create your own log messages. Log is an InfusioOp. Example.
  • All operations have XML documentation that comes from the API documentation.
  • All optional operation parameters are actually typed as optional (ie Operation(long? id = default)) so you don't have to provide a value.
  • All data models, and their properties, are immutable with a Copy method to change values. Makes for a nice API and thread-safe code. Example.
  • Authentication is configured up-front and not littered throughout the calls. I still need to make some authentication helpers around token management. But that's a pretty easy task.

Tasks to complete:

  • Library Documentation
  • Authentication token helper packages. These will allow auto-refreshing of tokens so you don't have to worry about it.
  • Create a test kit for easy unit testing.

Please create issues if you run into any problems or just want a feature.

Installation

dotnet add package infusio

or

Install-Package infusio

or

paket add infusio

Usage

See the demo project

About

Functional Infusionsoft API DSL for .NET

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published