<commit_before># WHMCS-Tools
Simple Asynchronous WHMCS client for .NET

Current Stable Build Status: ![Stable Status](https://nurci01.mrincops.net/TCPublished/BetterCorp/Whmcs-Tools/master-status.jpg?cc=1)
 
Current Stable Published Version: ![Stable Version](https://nurci01.mrincops.net/TCPublished/BetterCorp/Whmcs-Tools/master.jpg?cc=1) 
 
  
Current Development Build Status: ![Dev Status](https://nurci01.mrincops.net/TCPublished/BetterCorp/Whmcs-Tools/develop-status.jpg?cc=1) 
 
Current Development Published Version: ![Dev Version](https://nurci01.mrincops.net/TCPublished/BetterCorp/Whmcs-Tools/develop.jpg?cc=1) 
 
 
Example of how to get all clients:

# Step 1 - define the API that you want to use
```
var clientsApi = new BetterCorp.Tools.WHMCS.Clients();
```

# Step 2 - setup the connection info
# this can be done directly on the Api call as parameters but its more effective to use the ApiConnectionInfo class so that it can be passed into multiple Apis being used in the same class/app
```
var apiConnectionInfo = new ApiConnectionInfo()
{
  Hostname = "http://whmcs/",
  Username = "superUser",
  Password = "<PASSWORD>"
};
clientsApi.SetConnection(apiConnectionInfo);
```

# Call the api and write all the clients to the console !NOTE: This is Asynchronous :NOTE!
```
var clients = await clientsApi.GetClients();
clients.clients.client.ForEach((Client client) =>
{
  Console.WriteLine($"{client.firstname} {client.lastname}");
});
```<commit_msg>Updated readme.<commit_after># WHMCS-Tools
Simple Asynchronous WHMCS client for .NET

Current Stable Build Status: ![Stable Status](https://nurci01.mrincops.net/TCPublished/BetterCorp/Whmcs-Tools/master-status.jpg?cc=1)
 
Current Stable Published Version: ![Stable Version](https://nurci01.mrincops.net/TCPublished/BetterCorp/Whmcs-Tools/master.jpg?cc=1) 
 
  
Current Development Build Status: ![Dev Status](https://nurci01.mrincops.net/TCPublished/BetterCorp/Whmcs-Tools/develop-status.jpg?cc=1) 
 
Current Development Published Version: ![Dev Version](https://nurci01.mrincops.net/TCPublished/BetterCorp/Whmcs-Tools/develop.jpg?cc=1) 
 
 
# Install the NuGet package 

```
Install-Package BetterCorp.Tools.WHMCS
``` 

# Usage Example 

## Step 1 - define the API that you want to use 

```
var clientsApi = new BetterCorp.Tools.WHMCS.Clients();
```

## Step 2 - setup the connection info
`this can be done directly on the Api call as parameters but its more effective to use the ApiConnectionInfo class so that it can be passed into multiple Apis being used in the same class/app`

```
var apiConnectionInfo = new ApiConnectionInfo()
{
  Hostname = "http://whmcs/",
  Username = "superUser",
  Password = "<PASSWORD>"
};
clientsApi.SetConnection(apiConnectionInfo);
```

## Call the api and write all the clients to the console !NOTE: This is Asynchronous :NOTE! 

```
var clients = await clientsApi.GetClients();
clients.clients.client.ForEach((Client client) =>
{
  Console.WriteLine($"{client.firstname} {client.lastname}");
});
```
{'fraction_non_alphanumeric': 0.12346089850249584, 'fraction_numerical': 0.009317803660565723, 'mean_word_length': 5.012, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 7, 'https://': 8, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6214153', 'n_tokens_mistral': 1022, 'n_tokens_neox': 933, 'n_words': 260}