Metadata-Version: 2.1
Name: fshelper
Version: 0.3.0
Summary: Library for working with the FreshService API.
Author: Matthew Larsen
Author-email: matt.larsen@connorgp.com
License: MIT License
Project-URL: Source Code, https://github.com/matt-larsen-sld/freshservice-helper
Keywords: freshservice
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: requests
Requires-Dist: pydantic-factories

# fshelper
FreshService API usage helper version: 0.3.0

## Features
### Assets Endpoint v0.1.0
  Added an endpoint for working with assets

## Usage
*Example:*
```python
credential = Credential('MY_API_KEY', 'X')
with RequestService(credential, "mydomain") as request_service:
    asset_end_point = AssetsEndPoint(request_service)
    _assets = asset_end_point.get_all("include=type_fields") # gets the type_fields in the response data
    assets = []
    for asset_list in _assets:
        assets.extend(asset_list)
    licensed_assets = [asset for asset in assets if asset.get("assigned_on") is not None]
print(f"{len(licensed_assets)} assets found")
```

### Credentials for the FreshService API
The `fshelper.Credential` class is meant to help gather the basic authentication information for the FreshService API.
Provide your FreshService API key as the username and `X` as the password to the constructor.

https://api.freshservice.com/#authentication

### RequestService
Wrapper for the `requests` package to create an authenticated requests `Session`.   
Takes a `Credential` object and the company's FreshService domain (the part prior to `freshservice.com`).
Use this as a context manager or call the `RequestService.new_session()` method in a try, except, finally block with
`RequestService.session.close()` in the finally block.


### Endpoints
Different classes to work with different FreshService API endpoints.

# 0.3.0

Filter read-only and invalid fields from being sent to the FS API when defined for an end point.

# 0.2.7

Fixes for object create actions and delete actions for Assets

- Start on implementation of Pydantic models for Assets
- Change resource_key field to single and plural versions

# 0.2.2

Add Locations endpoint

# 0.2.1

Add Asset Types endpoint

# 0.2.0

Extended assets endpoint functionality

# 0.1.0

Delete capability for asset endpoints

# 0.0.8

Release to Azure devops

# 0.0.6

Addition of tbump

# 0.0.5

Added an endpoint for assets
