An open API service indexing awesome lists of open source software.

https://github.com/containersolutions/avazacli

Generated avaza API client
https://github.com/containersolutions/avazacli

Last synced: about 1 year ago
JSON representation

Generated avaza API client

Awesome Lists containing this project

README

          

# avazacli
Welcome to the autogenerated documentation & test tool for Avaza's API.

API Security & Authentication
Authentication options include OAuth2 Implicit and Authorization Code flows, and Personal Access Token. All connections should be encrypted over SSL/TLS

You can set up and manage your api authentication credentials from within your Avaza account. (requires Administrator permissions on your Avaza account).

OAuth2 Authorization endpoint: https://any.avaza.com/oauth2/authorize
OAuth2 Token endpoint: https://any.avaza.com/oauth2/token
Base URL for subsequent API Requests: https://api.avaza.com/

Blogpost about authenticating with Avaza's API: https://www.avaza.com/avaza-api-oauth2-authentication/
Blogpost on using Avaza's webhooks: https://www.avaza.com/avaza-api-webhook-notifications/
The OAuth flow currently issues Access Tokens that last 1 day, and Refresh tokens that last 180 days
The Api respects the security Roles assigned to the authenticating Avaza user and filters the data return appropriately.

Support
For API Support, and to request access please contact Avaza Support Team via our support chat.

User Contributed Libraries:
Graciously contributed by 3rd party users like you.
Note these are not tested or endorsesd by Avaza. We encourage you to review before use, and use at own risk.

This Python package is automatically generated by the [Swagger Codegen](https://github.com/swagger-api/swagger-codegen) project:

- API version: v1
- Package version: 1.0.0
- Build package: io.swagger.codegen.languages.PythonClientCodegen

## Requirements.

Python 2.7 and 3.4+

## Installation & Usage
### pip install

If the python package is hosted on Github, you can install directly from Github

```sh
pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git
```
(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git`)

Then import the package:
```python
import avazacli
```

### Setuptools

Install via [Setuptools](http://pypi.python.org/pypi/setuptools).

```sh
python setup.py install --user
```
(or `sudo python setup.py install` to install the package for all users)

Then import the package:
```python
import avazacli
```

## Getting Started

Please follow the [installation procedure](#installation--usage) and then run the following:

```python
from __future__ import print_function
import time
import avazacli
from avazacli.rest import ApiException
from pprint import pprint

# Configure OAuth2 access token for authorization: oauth2
avazacli.configuration.access_token = 'YOUR_ACCESS_TOKEN'
# create an instance of the API class
api_instance = avazacli.AccountApi()

try:
# Account Details
api_response = api_instance.account_get()
pprint(api_response)
except ApiException as e:
print("Exception when calling AccountApi->account_get: %s\n" % e)

```

## Documentation for API Endpoints

All URIs are relative to *https://api.avaza.com*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*AccountApi* | [**account_get**](docs/AccountApi.md#account_get) | **GET** /api/Account | Account Details
*CompanyApi* | [**company_get**](docs/CompanyApi.md#company_get) | **GET** /api/Company | Gets list of Companies
*CompanyApi* | [**company_get_by_id**](docs/CompanyApi.md#company_get_by_id) | **GET** /api/Company/{id} | Gets Company by Company ID
*CompanyApi* | [**company_post**](docs/CompanyApi.md#company_post) | **POST** /api/Company | Create a Company
*CompanyApi* | [**company_put**](docs/CompanyApi.md#company_put) | **PUT** /api/Company | Update a Task.
*ContactApi* | [**contact_get**](docs/ContactApi.md#contact_get) | **GET** /api/Contact | Gets list of Contacts
*ContactApi* | [**contact_get_by_id**](docs/ContactApi.md#contact_get_by_id) | **GET** /api/Contact/{id} | Gets Contact by Contact ID
*ContactApi* | [**contact_post**](docs/ContactApi.md#contact_post) | **POST** /api/Contact | Create a Contact
*CreditNoteApi* | [**credit_note_get**](docs/CreditNoteApi.md#credit_note_get) | **GET** /api/CreditNote | Gets list of CreditNotes
*CreditNoteApi* | [**credit_note_get_by_id**](docs/CreditNoteApi.md#credit_note_get_by_id) | **GET** /api/CreditNote/{id} | Gets Credit Note by CreditNoteID
*CurrencyApi* | [**currency_get**](docs/CurrencyApi.md#currency_get) | **GET** /api/Currency | Gets list of Currencies
*EstimateApi* | [**estimate_get**](docs/EstimateApi.md#estimate_get) | **GET** /api/Estimate | Gets list of Estimates
*EstimateApi* | [**estimate_get_by_id**](docs/EstimateApi.md#estimate_get_by_id) | **GET** /api/Estimate/{id} | Gets Estimate by Estimate ID
*ExpenseApi* | [**expense_get**](docs/ExpenseApi.md#expense_get) | **GET** /api/Expense | Gets list of Expenses
*ExpenseApi* | [**expense_get_by_id**](docs/ExpenseApi.md#expense_get_by_id) | **GET** /api/Expense/{id} | Gets an Expense Entry by Expense ID
*ExpenseApi* | [**expense_post**](docs/ExpenseApi.md#expense_post) | **POST** /api/Expense | Create an Expense
*InventoryApi* | [**inventory_get**](docs/InventoryApi.md#inventory_get) | **GET** /api/Inventory | Gets list of Inventory
*InventoryApi* | [**inventory_get_by_id**](docs/InventoryApi.md#inventory_get_by_id) | **GET** /api/Inventory/{id} | Gets InventoryItem by InventoryItem ID
*InvoiceApi* | [**invoice_get**](docs/InvoiceApi.md#invoice_get) | **GET** /api/Invoice | Gets list of Invoices
*InvoiceApi* | [**invoice_get_by_id**](docs/InvoiceApi.md#invoice_get_by_id) | **GET** /api/Invoice/{id} | Gets Invoice by Invoice ID
*InvoiceApi* | [**invoice_post**](docs/InvoiceApi.md#invoice_post) | **POST** /api/Invoice | Create a new draft invoice
*PaymentApi* | [**payment_get**](docs/PaymentApi.md#payment_get) | **GET** /api/Payment | Gets list of Payments
*PaymentApi* | [**payment_get_by_id**](docs/PaymentApi.md#payment_get_by_id) | **GET** /api/Payment/{id} | Gets Payment by Payment Transaction ID
*PaymentApi* | [**payment_post**](docs/PaymentApi.md#payment_post) | **POST** /api/Payment | Create new Payment and optionally assign payment allocations to Invoices
*ProjectApi* | [**project_get**](docs/ProjectApi.md#project_get) | **GET** /api/Project | Gets list of Projects
*ProjectApi* | [**project_get_by_id**](docs/ProjectApi.md#project_get_by_id) | **GET** /api/Project/{id} | Gets Project by Project ID
*ProjectApi* | [**project_post**](docs/ProjectApi.md#project_post) | **POST** /api/Project | Create a Project
*ProjectTimesheetCategoryApi* | [**project_timesheet_category_get**](docs/ProjectTimesheetCategoryApi.md#project_timesheet_category_get) | **GET** /api/ProjectTimesheetCategory | Gets list of Project Timesheet Categories
*ScheduleAssignmentApi* | [**schedule_assignment_get**](docs/ScheduleAssignmentApi.md#schedule_assignment_get) | **GET** /api/ScheduleAssignment | Gets list of Schedule Assignments.
*ScheduleSeriesApi* | [**schedule_series_get**](docs/ScheduleSeriesApi.md#schedule_series_get) | **GET** /api/ScheduleSeries | Gets list of Schedule Series
*SectionApi* | [**section_get**](docs/SectionApi.md#section_get) | **GET** /api/Section | Gets list of Sections
*SectionApi* | [**section_post**](docs/SectionApi.md#section_post) | **POST** /api/Section | Create a Section
*TaskApi* | [**task_get**](docs/TaskApi.md#task_get) | **GET** /api/Task | Gets list of Tasks
*TaskApi* | [**task_get_by_id**](docs/TaskApi.md#task_get_by_id) | **GET** /api/Task/{id} | Gets Task by Task ID
*TaskApi* | [**task_post**](docs/TaskApi.md#task_post) | **POST** /api/Task | Create a Task
*TaskApi* | [**task_put**](docs/TaskApi.md#task_put) | **PUT** /api/Task | Update a Task.
*TaxApi* | [**tax_get**](docs/TaxApi.md#tax_get) | **GET** /api/Tax | Get List of Taxes configured in the Avaza account.
*TimesheetApi* | [**timesheet_delete**](docs/TimesheetApi.md#timesheet_delete) | **DELETE** /api/Timesheet/{id} | Delete a Timesheet Entry
*TimesheetApi* | [**timesheet_get**](docs/TimesheetApi.md#timesheet_get) | **GET** /api/Timesheet | Gets list of Timsheets
*TimesheetApi* | [**timesheet_get_by_id**](docs/TimesheetApi.md#timesheet_get_by_id) | **GET** /api/Timesheet/{id} | Gets a Timesheet Entry by Timesheet ID
*TimesheetApi* | [**timesheet_post**](docs/TimesheetApi.md#timesheet_post) | **POST** /api/Timesheet | Create a new Timesheet Entry
*TimesheetApi* | [**timesheet_put**](docs/TimesheetApi.md#timesheet_put) | **PUT** /api/Timesheet | Update a Timesheet
*TimesheetSubmissionApi* | [**timesheet_submission_post**](docs/TimesheetSubmissionApi.md#timesheet_submission_post) | **POST** /api/TimesheetSubmission | Submit Timesheets for Approval.
*TimesheetTimerApi* | [**timesheet_timer_get_running_timer**](docs/TimesheetTimerApi.md#timesheet_timer_get_running_timer) | **GET** /api/TimesheetTimer | Gets the Running Timer if there is one for a user.
*TimesheetTimerApi* | [**timesheet_timer_start_timer**](docs/TimesheetTimerApi.md#timesheet_timer_start_timer) | **POST** /api/TimesheetTimer/{id} | Starts a Timer running on an existing Timesheet Entry
*TimesheetTimerApi* | [**timesheet_timer_stop_timer**](docs/TimesheetTimerApi.md#timesheet_timer_stop_timer) | **DELETE** /api/TimesheetTimer/{id} | Stop the timer running on an existing Timesheet Entry
*UserProfileApi* | [**user_profile_get**](docs/UserProfileApi.md#user_profile_get) | **GET** /api/UserProfile | Get Collection of Users who have roles in the current Avaza account.
*WebhookApi* | [**webhook_delete**](docs/WebhookApi.md#webhook_delete) | **DELETE** /api/Webhook/{id} | Delete Webhook Subscription by ID
*WebhookApi* | [**webhook_delete_by_url**](docs/WebhookApi.md#webhook_delete_by_url) | **DELETE** /api/Webhook | Delete webhook subscription by URL
*WebhookApi* | [**webhook_get**](docs/WebhookApi.md#webhook_get) | **GET** /api/Webhook | Get list of Webhook Subscriptions
*WebhookApi* | [**webhook_post**](docs/WebhookApi.md#webhook_post) | **POST** /api/Webhook | Subscribe to Webhook. On success, returns ID of webhook subscription.

## Documentation For Models

- [AccountDetails](docs/AccountDetails.md)
- [Company](docs/Company.md)
- [CompanyContact](docs/CompanyContact.md)
- [CompanyList](docs/CompanyList.md)
- [ContactList](docs/ContactList.md)
- [CreateSubscription](docs/CreateSubscription.md)
- [CreditNote](docs/CreditNote.md)
- [CreditNoteAllocation](docs/CreditNoteAllocation.md)
- [CreditNoteLineItem](docs/CreditNoteLineItem.md)
- [CreditNoteList](docs/CreditNoteList.md)
- [Currency](docs/Currency.md)
- [CurrencyList](docs/CurrencyList.md)
- [EstimateDetails](docs/EstimateDetails.md)
- [EstimateLineItemDetails](docs/EstimateLineItemDetails.md)
- [EstimateLinks](docs/EstimateLinks.md)
- [EstimateList](docs/EstimateList.md)
- [ExpenseDetails](docs/ExpenseDetails.md)
- [ExpenseList](docs/ExpenseList.md)
- [InventoryItem](docs/InventoryItem.md)
- [InventoryList](docs/InventoryList.md)
- [Invoice](docs/Invoice.md)
- [InvoiceLineItem](docs/InvoiceLineItem.md)
- [InvoiceLinks](docs/InvoiceLinks.md)
- [InvoiceList](docs/InvoiceList.md)
- [IssuerDetails](docs/IssuerDetails.md)
- [NewCompany](docs/NewCompany.md)
- [NewCompanyContact](docs/NewCompanyContact.md)
- [NewExpense](docs/NewExpense.md)
- [NewInvoice](docs/NewInvoice.md)
- [NewInvoiceLineItem](docs/NewInvoiceLineItem.md)
- [NewPayment](docs/NewPayment.md)
- [NewPaymentAllocation](docs/NewPaymentAllocation.md)
- [NewProjectModel](docs/NewProjectModel.md)
- [NewSection](docs/NewSection.md)
- [NewTag](docs/NewTag.md)
- [NewTask](docs/NewTask.md)
- [NewTimesheet](docs/NewTimesheet.md)
- [Payment](docs/Payment.md)
- [PaymentAllocation](docs/PaymentAllocation.md)
- [PaymentList](docs/PaymentList.md)
- [ProjectDetails](docs/ProjectDetails.md)
- [ProjectList](docs/ProjectList.md)
- [ProjectListDetails](docs/ProjectListDetails.md)
- [ProjectMemberDetails](docs/ProjectMemberDetails.md)
- [ProjectSectionDetails](docs/ProjectSectionDetails.md)
- [ProjectTagItem](docs/ProjectTagItem.md)
- [ProjectTimesheetCategoryDetails](docs/ProjectTimesheetCategoryDetails.md)
- [ProjectTimesheetCategoryList](docs/ProjectTimesheetCategoryList.md)
- [RecipientDetails](docs/RecipientDetails.md)
- [RoleDetails](docs/RoleDetails.md)
- [ScheduleAssignmentDetails](docs/ScheduleAssignmentDetails.md)
- [ScheduleAssignmentList](docs/ScheduleAssignmentList.md)
- [ScheduleSeriesDetails](docs/ScheduleSeriesDetails.md)
- [ScheduleSeriesList](docs/ScheduleSeriesList.md)
- [SectionDetails](docs/SectionDetails.md)
- [SectionList](docs/SectionList.md)
- [SubscribeResult](docs/SubscribeResult.md)
- [TagItem](docs/TagItem.md)
- [TaskDetails](docs/TaskDetails.md)
- [TaskList](docs/TaskList.md)
- [TaxComponent](docs/TaxComponent.md)
- [TaxItem](docs/TaxItem.md)
- [TaxList](docs/TaxList.md)
- [TimesheetDetails](docs/TimesheetDetails.md)
- [TimesheetList](docs/TimesheetList.md)
- [UpdateCompany](docs/UpdateCompany.md)
- [UpdateTask](docs/UpdateTask.md)
- [UpdateTimesheetModel](docs/UpdateTimesheetModel.md)
- [UserDetails](docs/UserDetails.md)
- [UserList](docs/UserList.md)
- [UserTagDetails](docs/UserTagDetails.md)
- [WebhookDetails](docs/WebhookDetails.md)
- [WebhookList](docs/WebhookList.md)

## Documentation For Authorization

## oauth2

- **Type**: OAuth
- **Flow**: implicit
- **Authorization URL**: https://any.avaza.com/oauth2/authorize
- **Scopes**:
- **read_contacts**: Read access to Customers, Contacts
- **read_account**: Read access to Account metadata
- **read_users**: Read access to User Profiles
- **read_financials**: Read access to Estimates, Invoices, Payments, Credit Notes
- **read_projects**: Read access to Projects, Project Settings, Tasks
- **read_schedule**: Read access to Schedule Details
- **read_timesheets**: Read access to Timesheet Details
- **read_expenses**: Read access to Expense Details
- **write_contacts**: Write access to Customers, Contacts
- **write_account**: Write access to Account metadata
- **write_users**: Write access to User Profiles
- **write_financials**: Write access to Estimates, Invoices, Payments, Credit Notes
- **write_projects**: Write access to Projects, Project Settings, Tasks
- **write_schedule**: Write access to Schedule module
- **write_timesheets**: Write access to Timesheets module
- **write_expenses**: Write access to Expense module
- **webhook_notifications**: Read access to webhook notification events

## Author