# PSA API
**Base URL**: https://dev-cloud.acronis.com/api/advanced-automation/v1
## Security
### OAuth 2.0
A description of the security scheme.
Supported grant types:
* `client_credentials`
* `password`
* `authorization_code`
Authorization URI example: `https://dev-cloud.acronis.com/api/2/idp/authorize`
Access token URI example: `https://dev-cloud.acronis.com/api/2/idp/token`
### Request parameters
#### Headers
| Name | Description |
|------|-------------|
| `Authorization` | (Required) OAuth 2.0 access token.
**Type**: String
**Pattern**: `^Bearer [0-9a-zA-Z\-\._~+/]+={0,2}$` |
### Responses
| Code | Description |
|------|-------------|
| `401` | The request lacks valid authentication credentials for the target resource. |
| `403` | The request to target resource is forbidden with provided authentication credentials. |
### Scopes
* `urn:acronis.com::advanced_automation::advanced_automation_client`
* `urn:acronis.com::advanced_automation::advanced_automation_client_manager`
* `urn:acronis.com::advanced_automation::advanced_automation_admin`
* `urn:acronis.com::advanced_automation::advanced_automation_director`
* `urn:acronis.com::advanced_automation::advanced_automation_engineer`
* `urn:acronis.com::advanced_automation::advanced_automation_finance`
* `urn:acronis.com::advanced_automation::advanced_automation_finance_manager`
* `urn:acronis.com::advanced_automation::advanced_automation_group_manager`
* `urn:acronis.com::advanced_automation::advanced_automation_hr`
* `urn:acronis.com::advanced_automation::advanced_automation_sales`
## Endpoints
### Create product (PUT /Product)
Creates a product.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
For OAuth2 authorization method, one of the following scopes is required by the endpoint:
* `urn:acronis.com::advanced_automation::advanced_automation_admin`
* `urn:acronis.com::advanced_automation::advanced_automation_finance`
* `urn:acronis.com::advanced_automation::advanced_automation_engineer`
* `urn:acronis.com::advanced_automation::advanced_automation_finance_manager`
* `urn:acronis.com::advanced_automation::advanced_automation_sales`
#### Request parameters
##### Request body
**Media type**: `application/json`
- `Active` — Defines whether the product is available for sales (true) or not (false).
**Type**: Boolean
**Default**: false
- `Taxable` — Defines whether the product is a subject for taxes (true) or not (false).
**Type**: Boolean
**Default**: false
- `Name` — Defines the product name.
**Type**: String
**Max length**: 255
- `Description` — Defines a description, used in invoice lines for the product.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `Price` — Defines an end user price for a single product item.
**Type**: Number
**Default**: 0
- `Cost` — Defines a cost of a single product item for the partner.
**Type**: Number
**Default**: 0
- `ViewInContract` — Defines whether product can be used in contracts for the recurring billing (true) or not (false).
**Type**: Boolean
**Default**: false
- `ProductForActivityBasedTicketBilling` — Defines whether product can be used as an hourly rate for the ticket time billing (true) or not (false).
**Type**: Boolean
**Default**: false
- `Ledger` — Defines a GUID number associated with the product. Can be empty.
**Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `CreationDate` — Defines the product creation date and time.
**Type**: Union
**May be any of**:
1. RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
2. **Type**: null
- `LastChangeDate` — Defines the product's date and time of the latest change.
**Type**: Union
**May be any of**:
1. RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
2. **Type**: null
- `VAR` — Defines whether the product is resold (true) or not (false). Used for analytic purposes (VAR = value-added reseller).
An example of a VAR product can be a 3rd party vendor license, e.g. Acronis. Project hours or Support hours are typically not VAR products.
**Type**: Boolean
**Default**: false
- `TicketProduct` — Defines whether product can be sold in service desk tickets as a part of support activity, e.g., Security expert hours for consultancy.
**Type**: Boolean
**Default**: false
- `PriceAdjustable` — Defines whether the ticket product price can be manually adjusted by engineers from a ticket (true) or not (false).
**Type**: Boolean
**Default**: false
- `ProjectProduct` — Defines whether product can be used in projects for the project billing (true) or not (false).
**Type**: Boolean
**Default**: false
- `ProjectProductPriceAdjustable` — Defines whether the project product price can be manually adjusted by engineers from a project (true) or not (false).
**Type**: Boolean
- `ExternalIdNumber` — Defines the product ID in 3rd party systems for a product mapping, e.g. in 3rd party accounting platform.
**Type**: String
**Max length**: 100
- `SKU` — Defines a SKU code for the project.
**Type**: String
**Max length**: 20
**Example**:
```json
{
"Name": "Test-Product-API-Documentation",
"Description": "Test-Product-API-Documentation-Description",
"Taxable": true,
"Price": 100,
"ViewInContract": false,
"ProjectProduct": false,
"ProductForActivityBasedTicketBilling": false,
"Cost": 20,
"Active": true
}
```
#### Responses
##### `200` — The request was successful.
**Media type**: `application/json`
- `InUseInTickets` — **Type**: Boolean
- `LastChangeDate` — **Type**: Union
**May be any of**:
1. RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
2. **Type**: null
- `Ledger` — **Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `Description` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `InUseInBundles` — **Type**: Boolean
- `Id` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `Cost` — **Type**: Number
- `LedgerNumber` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `ProductForActivityBasedTicketBilling` — **Type**: Boolean
- `InternalDescription` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `InUseInProjects` — **Type**: Boolean
- `Price` — **Type**: Number
- `CreationDate` — RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
- `ProjectProduct` — **Type**: Union
**May be any of**:
1. **Type**: Boolean
2. **Type**: null
- `Name` — **Type**: String
- `ProjectProductPriceAdjustable` — **Type**: Boolean
- `InUseInSales` — **Type**: Boolean
- `InUse` — **Type**: Boolean
- `InUseInTicketBilling` — **Type**: Boolean
- `Tenant` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `InUseInContracts` — **Type**: Boolean
- `InUseInQuoteTemplates` — **Type**: Boolean
- `VAR` — **Type**: Boolean
- `ExternalIdNumber` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `AcronisId` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `ViewInContract` — **Type**: Boolean
- `Active` — **Type**: Boolean
- `CustomFields` — **Type**: Union
**May be any of**:
1. **Type**: Array
2. **Type**: null
- `LedgerDescription` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `Taxable` — **Type**: Boolean
- `PriceAdjustable` — **Type**: Boolean
- `SKU` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `IsDefault` — **Type**: Boolean
- `InternalName` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `TicketProduct` — **Type**: Boolean
**Example**:
```json
{
"CreationDate": "2024-07-18T14:51:35.69",
"Id": "cbbf9a00-019e-4af8-beb1-76d3fdb73058",
"ExternalIdNumber": null,
"Name": "Test-Product-API-Documentation",
"InternalName": null,
"CustomFields": null,
"InUse": false,
"SKU": null,
"InUseInQuoteTemplates": false,
"LastChangeDate": "2024-07-18T00:00:00",
"Description": "Test-Product-API-Documentation-Description",
"Taxable": true,
"Price": 100,
"LedgerNumber": null,
"Tenant": "10f7e7cf-0aef-48d0-9ef6-abe96e18e70c",
"TicketProduct": false,
"InUseInProjects": false,
"Ledger": null,
"ViewInContract": false,
"InUseInSales": false,
"ProjectProduct": false,
"AcronisId": null,
"InUseInTickets": false,
"InUseInTicketBilling": false,
"ProductForActivityBasedTicketBilling": false,
"InternalDescription": null,
"LedgerDescription": null,
"Cost": 20,
"ProjectProductPriceAdjustable": false,
"InUseInBundles": false,
"IsDefault": false,
"InUseInContracts": false,
"PriceAdjustable": false,
"VAR": false,
"Active": true
}
```
### Fetch products (GET /Product)
Fetches information about the products either by GUID or by filtering parameters.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
For OAuth2 authorization method, one of the following scopes is required by the endpoint:
* `urn:acronis.com::advanced_automation::advanced_automation_admin`
* `urn:acronis.com::advanced_automation::advanced_automation_finance`
* `urn:acronis.com::advanced_automation::advanced_automation_engineer`
* `urn:acronis.com::advanced_automation::advanced_automation_finance_manager`
* `urn:acronis.com::advanced_automation::advanced_automation_sales`
#### Request parameters
#### Responses
##### `200` — The request was successful.
**Media type**: `application/json`
The response body is one of the following types:
**`Product`**:
- `InUseInTickets` — **Type**: Boolean
- `LastChangeDate` — **Type**: Union
**May be any of**:
1. RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
2. **Type**: null
- `Ledger` — **Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `Description` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `InUseInBundles` — **Type**: Boolean
- `Id` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `Cost` — **Type**: Number
- `LedgerNumber` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `ProductForActivityBasedTicketBilling` — **Type**: Boolean
- `InternalDescription` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `InUseInProjects` — **Type**: Boolean
- `Price` — **Type**: Number
- `CreationDate` — RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
- `ProjectProduct` — **Type**: Union
**May be any of**:
1. **Type**: Boolean
2. **Type**: null
- `Name` — **Type**: String
- `ProjectProductPriceAdjustable` — **Type**: Boolean
- `InUseInSales` — **Type**: Boolean
- `InUse` — **Type**: Boolean
- `InUseInTicketBilling` — **Type**: Boolean
- `Tenant` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `InUseInContracts` — **Type**: Boolean
- `InUseInQuoteTemplates` — **Type**: Boolean
- `VAR` — **Type**: Boolean
- `ExternalIdNumber` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `AcronisId` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `ViewInContract` — **Type**: Boolean
- `Active` — **Type**: Boolean
- `CustomFields` — **Type**: Union
**May be any of**:
1. **Type**: Array
2. **Type**: null
- `LedgerDescription` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `Taxable` — **Type**: Boolean
- `PriceAdjustable` — **Type**: Boolean
- `SKU` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `IsDefault` — **Type**: Boolean
- `InternalName` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `TicketProduct` — **Type**: Boolean
**Example**:
```json
{
"CreationDate": "2024-07-18T14:51:35.69",
"Id": "cbbf9a00-019e-4af8-beb1-76d3fdb73058",
"ExternalIdNumber": null,
"Name": "Test-Product-API-Documentation",
"InternalName": null,
"CustomFields": null,
"InUse": false,
"SKU": null,
"InUseInQuoteTemplates": false,
"LastChangeDate": "2024-07-18T00:00:00",
"Description": "Test-Product-API-Documentation-Description",
"Taxable": true,
"Price": 100,
"LedgerNumber": null,
"Tenant": "10f7e7cf-0aef-48d0-9ef6-abe96e18e70c",
"TicketProduct": false,
"InUseInProjects": false,
"Ledger": null,
"ViewInContract": false,
"InUseInSales": false,
"ProjectProduct": false,
"AcronisId": null,
"InUseInTickets": false,
"InUseInTicketBilling": false,
"ProductForActivityBasedTicketBilling": false,
"InternalDescription": null,
"LedgerDescription": null,
"Cost": 20,
"ProjectProductPriceAdjustable": false,
"InUseInBundles": false,
"IsDefault": false,
"InUseInContracts": false,
"PriceAdjustable": false,
"VAR": false,
"Active": true
}
```
**`GetProductSearchResponse`**:
- `products` — **Type**: Object
**Example**:
```json
{
"products": {
"Result": {
"Products": [
{
"Id": "00000000-0000-0000-0000-000000000000",
"Active": true,
"Name": "",
"Description": "",
"Price": 0,
"Cost": 0,
"ViewInContract": true,
"Ledger": "00000000-0000-0000-0000-000000000000",
"LastChangeDate": "",
"ExternalIdNumber": "",
"AcronisId": ""
}
],
"Paging": {
"AmountTotalItems": 0,
"AmountRecordsFound": 0,
"AmountOfPages": 0
}
}
}
}
```
**Examples**:
*`Product fetched by ID`*:
```json
{
"CreationDate": "2021-12-02T14:14:54.59",
"Id": "15cc9673-d832-4a9e-b1b1-08fce3e71428",
"ExternalIdNumber": null,
"Name": "aa-ticket-billing",
"InternalName": null,
"CustomFields": [],
"InUse": false,
"SKU": null,
"InUseInQuoteTemplates": false,
"LastChangeDate": null,
"Description": null,
"Taxable": false,
"Price": 0.12,
"LedgerNumber": null,
"Tenant": "10f7e7cf-0aef-48d0-9ef6-abe96e18e70c",
"TicketProduct": false,
"InUseInProjects": false,
"Ledger": null,
"ViewInContract": false,
"InUseInSales": false,
"ProjectProduct": null,
"AcronisId": null,
"InUseInTickets": false,
"InUseInTicketBilling": false,
"ProductForActivityBasedTicketBilling": true,
"InternalDescription": null,
"LedgerDescription": null,
"Cost": 0,
"ProjectProductPriceAdjustable": false,
"InUseInBundles": false,
"IsDefault": false,
"InUseInContracts": false,
"PriceAdjustable": false,
"VAR": false,
"Active": true
}
```
*`Product search result`*:
```json
{
"products": {
"Result": {
"Products": [
{
"Id": "15cc9673-d832-4a9e-b1b1-08fce3e71428",
"ExternalIdNumber": null,
"Name": "aa-ticket-billing",
"LastChangeDate": null,
"Description": null,
"Price": 0.12,
"Ledger": null,
"ViewInContract": false,
"AcronisId": null,
"Cost": 0,
"Active": true
},
{
"Id": "b67d98c0-1bba-4aa8-b1be-cd6f13283fd2",
"ExternalIdNumber": "",
"Name": "aa TEST changes on last page",
"LastChangeDate": null,
"Description": "",
"Price": 333,
"Ledger": null,
"ViewInContract": false,
"AcronisId": null,
"Cost": 0,
"Active": true
},
{
"Id": "97103d6a-94be-421f-8af8-4dcd086bfd82",
"ExternalIdNumber": "",
"Name": "11AAANewJProduct",
"LastChangeDate": null,
"Description": "",
"Price": 98,
"Ledger": null,
"ViewInContract": true,
"AcronisId": null,
"Cost": 0,
"Active": true
},
{
"Id": "3f3c9654-af87-4d40-8309-aa48f2e39100",
"ExternalIdNumber": "",
"Name": "11AAAJtest",
"LastChangeDate": null,
"Description": "test Price",
"Price": 55,
"Ledger": null,
"ViewInContract": true,
"AcronisId": null,
"Cost": 0,
"Active": true
}
],
"Paging": {
"AmountTotalItems": 228,
"AmountRecordsFound": 4,
"AmountOfPages": 0
}
}
}
}
```
### Create ledger (PUT /Ledger)
Creates a ledger.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Request body
**Media type**: `application/json`
- `Active` — Ledger's status.
**Type**: Boolean
**Default**: false
- `AllowInactive` — **Type**: Boolean
**Default**: false
- `Description` — Ledger's description.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `Externalid` — External ID for ledger mapping.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `Number` — Ledger's number.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
**Example**:
```json
{
"Active": true,
"Description": "Api documentation ledger",
"Number": "API-Doc-LG"
}
```
#### Responses
##### `200` — The request was successful.
**Media type**: `application/json`
- `LastChangeDate` — **Type**: Union
**May be any of**:
1. RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
2. **Type**: null
- `Description` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `Id` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `ExternalId` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `CreationDate` — **Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
- `Tenant` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `Number` — **Type**: String
- `Active` — **Type**: Boolean
- `AllowInactive` — **Type**: Boolean
**Example**:
```json
{
"CreationDate": "2024-07-22T05:34:40.1968856",
"Id": "65ea810d-7059-4199-8b01-813e9255bc86",
"ExternalId": null,
"Number": "Number",
"LastChangeDate": null,
"Description": null,
"Tenant": "10f7e7cf-0aef-48d0-9ef6-abe96e18e70c",
"AllowInactive": true,
"Active": true
}
```
### Fetch ledger (GET /Ledger)
Fetches information about the ledgers either by GUID or by filtering parameters.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
#### Responses
##### `200` — The request was successful.
**Media type**: `application/json`
The response body is one of the following types:
**`Ledger`**:
- `LastChangeDate` — **Type**: Union
**May be any of**:
1. RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
2. **Type**: null
- `Description` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `Id` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `ExternalId` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `CreationDate` — **Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
- `Tenant` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `Number` — **Type**: String
- `Active` — **Type**: Boolean
- `AllowInactive` — **Type**: Boolean
**Example**:
```json
{
"CreationDate": "2024-07-22T05:34:40.1968856",
"Id": "65ea810d-7059-4199-8b01-813e9255bc86",
"ExternalId": null,
"Number": "Number",
"LastChangeDate": null,
"Description": null,
"Tenant": "10f7e7cf-0aef-48d0-9ef6-abe96e18e70c",
"AllowInactive": true,
"Active": true
}
```
**`GetLedgersSearchResponse`**:
- `Ledgers` — **Type**: Array of Object
**Array type description:**
**Type**: Object
- `Paging` — **Type**: Object
**Example**:
```json
{
"Ledgers": [
{
"CreationDate": "0001-01-01T00:00:00Z",
"Id": "00000000-0000-0000-0000-000000000000",
"ExternalId": "",
"Number": "",
"Description": "",
"Active": true
},
{
"CreationDate": "0001-01-01T00:00:00Z",
"Id": "00000000-0000-0000-0000-000000000000",
"ExternalId": "",
"Number": "",
"Description": "",
"Active": true
}
],
"Paging": {
"AmountTotalItems": 0,
"AmountRecordsFound": 0,
"AmountOfPages": 0
}
}
```
**Examples**:
*`Ledger fetched by ID`*:
```json
{
"CreationDate": "2024-07-22T00:00:00",
"Id": "65ea810d-7059-4199-8b01-813e9255bc86",
"ExternalId": null,
"Number": "Number",
"LastChangeDate": null,
"Description": null,
"Tenant": "10f7e7cf-0aef-48d0-9ef6-abe96e18e70c",
"AllowInactive": true,
"Active": true
}
```
*`Ledger search result`*:
```json
{
"Ledgers": [
{
"CreationDate": "0001-01-01T00:00:00Z",
"Id": "00000000-0000-0000-0000-000000000000",
"ExternalId": "",
"Number": "",
"Description": "",
"Active": false
}
],
"Paging": {
"AmountRecordsFound": 0,
"AmountOfPages": 0,
"AmountTotalItems": 0
}
}
```
### Fetch Sales items (GET /SalesItems)
Fetches a list of Sales items.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Request body
**Media type**: `application/json`
- `FullTextSearchInQuotes` — **Type**: String
- `FullTextSearch` — **Type**: String
- `Customer` — **Type**: String
- `InvoiceDate` — **Type**: Union
**May be any of**:
1. RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
2. **Type**: null
- `ProductName` — **Type**: String
- `SendByEmail` — **Type**: Union
**May be any of**:
1. **Type**: Boolean
2. **Type**: null
- `HasBeenBilled` — **Type**: Union
**May be any of**:
1. **Type**: Boolean
2. **Type**: null
- `SortColumn` — **Type**: String
**Allowed values**:
- `InvoiceDate`
- `Total`
- `Age`
- `Status`
- `Customer`
- `SortDirection` — Invoice sorting direction ascending or descending
**Type**: String
**Allowed values**:
- `Asc`
- `Desc`
**Default**: Asc
- `InsertedSaleId` — **Type**: String
**Example**:
```json
{
"FullTextSearchInQuotes": "",
"FullTextSearch": "",
"Customer": "",
"InvoiceDate": "",
"ProductName": "",
"SendByEmail": true,
"HasBeenBilled": true,
"SortColumn": "InvoiceDate",
"SortDirection": "Asc",
"InsertedSaleId": ""
}
```
#### Responses
##### `200`
**Media type**: `application/json`
- `AmountOfPages` — **Type**: Integer
- `AmountRecordsFound` — **Type**: Integer
- `SalesItems` — **Type**: Array of Object
**Array type description:**
**Type**: Object
- `AmountTotalItems` — **Type**: Integer
**Example**:
```json
{
"AmountOfPages": 0,
"AmountRecordsFound": 0,
"SalesItems": [
{
"Guid": "00000000-0000-0000-0000-000000000000",
"Customer": "",
"InvoiceDate": "1970-01-01T00:00:00.000Z",
"HasBeenBilled": true,
"TotalAmount": 0,
"Age": 0
}
],
"AmountTotalItems": 0
}
```
### Create Sales item (PUT /SalesItems)
Creates a Sales Item.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Request body
**Media type**: `application/json`
- `BillingEntity` — Defines a partner's billing entity used for invoicing.
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Default**: 00000000-0000-0000-0000-000000000000
- `BuildingName` — Defines customer's address information to be used on the invoice: building name.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `City` — Defines customer's address information to be used on the invoice: city.
**Type**: String
- `Customer` — Defines a customer tenant who received products or services.
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `EmailAddress` — Defines a customer's email address.
**Type**: String
- `HouseNo` — Defines customer's address information to be used on the invoice: street number.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `HouseNoAdd` — Defines customer's address information to be used on the invoice: building number.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `SalesItemProducts` — List of SalesItemProducts
**Type**: Array of Object
**Array type description:**
**Type**: Object
- `Address` — **Type**: Object
- `SendByEmail` — Defines whether the resulting invoice's delivery method will be "By email" (1) or "Mail" (0).
**Type**: Boolean
**Default**: false
- `StateCountry` — Defines customer's address information to be used on the invoice: state.
**Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `Street` — Defines customer's address information to be used on the invoice: street.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `Ticket` — Defines a link to the relevant service desk ticket for a ticket-time billing.
**Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `Zipcode` — Defines customer's address information to be used on the invoice: ZIP or postal code.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
**Example**:
```json
{
"SelectedAddress": {},
"HouseNo": "1",
"Country": "d46c54bd-1704-4a55-bb76-fc03073669a0",
"Address": {
"HouseNo": "",
"Country": "",
"StateCountry": "",
"Zipcode": "",
"Street": "",
"City": "",
"HouseNoAdd": ""
},
"CustomerName": "=CUstomer Sync=",
"SalesItemProducts": [
{
"Quantity": 1,
"Discount": 5,
"Description": null,
"Price": 10,
"Product": "deffa51b-207c-4e73-972d-0343736bb9f4",
"ProductName": "Test Product",
"IsItemNote": false
},
{
"Quantity": 0,
"Discount": 0,
"Description": "Some Line item note",
"Price": 0,
"Product": "deffa51b-207c-4e73-972d-0343736bb9f4",
"IsItemNote": true
}
],
"IsSalesOrContract": true,
"Incasso": false,
"StateCountry": "b4c87080-7c8c-45e0-8867-a714ffc79b7d",
"Zipcode": "1",
"Street": "1",
"Customer": "9e145169-059d-422d-80eb-07356e9611a8",
"City": "1",
"StartDate": "2024-06-28",
"HouseNoAdd": null,
"BillingEntity": "d84f5018-c38f-4e3b-af36-0849119b41af",
"SendByEmail": false,
"CustomerAddresses": [],
"EmailAddress": "customer.sync@gmail.com",
"BuildingName": null
}
```
#### Responses
##### `200`
**Media type**: `application/json`
- `Id` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `AmountOfPages` — **Type**: Integer
- `AmountRecordsFound` — **Type**: Integer
- `Age` — **Type**: Union
**May be any of**:
1. **Type**: Integer
2. **Type**: null
- `InvoiceDate` — RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
- `AmountTotalItems` — **Type**: Integer
- `Customer` — **Type**: String
- `TotalAmount` — **Type**: Number
- `HasBeenBilled` — **Type**: Boolean
**Example**:
```json
{
"sales": {
"SalesItems": [
{
"Id": "00000000-0000-0000-0000-000000000000",
"TotalAmount": 0,
"Age": null,
"Customer": "",
"InvoiceDate": "0001-01-01T00:00:00Z",
"HasBeenBilled": false
}
],
"AmountRecordsFound": 0,
"AmountOfPages": 0,
"AmountTotalItems": 0
}
}
```
### Delete Sales item (DELETE /SalesItems)
Deletes a Sales Item.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Request body
**Media type**: `application/json`
- `customerId` — Defines a Customer ID for the sales item
**Type**: String
- `id` — Defines a sales Item ID for deletion
**Type**: String
**Example**:
```json
{
"id": "00000000-0000-0000-0000-000000000000",
"customerId": "00000000-0000-0000-0000-000000000000"
}
```
#### Responses
##### `200` — The request was successful.
**Media type**: `application/json`
- `default` — **Type**: any
### Create or update Contract (PUT /Contracts)
Creates or updates a Contract
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Request body
**Media type**: `application/json`
- `BillInAdvance` — Defines a billing method for the contract.
**Type**: Boolean
**Default**: false
- `BillingEntity` — Defines a billing entity for the contract billing.
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Default**: 00000000-0000-0000-0000-000000000000
- `BlockHours` — Defines whether support block hours are included (1) into the contract, or not (0).
**Type**: Boolean
**Default**: false
- `BlockHoursNumber` — Defines a number support hours in case block hours are included into the contract.
**Type**: Union
**May be any of**:
1. **Type**: Integer
2. **Type**: null
- `BuildingName` — Defines customer's address information to be used on the invoice: building name.
**Type**: String
- `City` — Defines customer's address information to be used on the invoice: city.
**Type**: String
- `ContactEmail` — Contact email for the contract.
**Type**: String
- `ContractParts` — Contract's parts - list of contract products.
**Type**: Array of Object
**Array type description:**
**Type**: Object
- `Customer` — Customer ID.
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Default**: 00000000-0000-0000-0000-000000000000
- `EndDate` — Contract's end date. Need to describe how to proceed with "Forever" end date. We have this check-box in UI.
**Type**: DateTime
**Default**: 0001-01-01T00:00:00Z
- `HouseNo` — Defines customer's address information to be used on the invoice: street number.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `HouseNoAdd` — Defines customer's address information to be used on the invoice: building number.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `KeepRemainingHours` — Defines a retainer option, remaining (unused) hours are kept for the next billing period (1), or dropped (0).
**Type**: Boolean
**Default**: false
- `Name` — Contract name.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `PaymentIntervalInMonths` — Defines an invoice interval for the contract.
**Type**: Integer
**Default**: 0
- `ProRated` — Defines whether proration for the contract billing is enabled (1), or not (0).
**Type**: Boolean
**Default**: false
- `ReferenceNumber` — Contract's reference number.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `RenewalThreshold` — Defines a threshold for automatic block renewal.
**Type**: Union
**May be any of**:
1. **Type**: Integer
2. **Type**: null
- `Retainer` — Defines whether the contract is a retainer and block hours are billed every month / quarter / half year / year (1), or not (0).
**Type**: Boolean
**Default**: false
- `SendInvoiceByEmail` — Defines a delivery method for generated invoices.
**Type**: Boolean
**Default**: false
- `StartDate` — Contract's start date.
**Type**: DateTime
**Default**: 0001-01-01T00:00:00Z
- `StateCountry` — Defines customer's address information to be used on the invoice: state.
**Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `Street` — Defines customer's address information to be used on the invoice: street.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `Zipcode` — Defines customer's address information to be used on the invoice: ZIP or postal code.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
**Example**:
```json
{
"Name": "ContractName",
"DefaultSLA": "5784e627-29db-4ba1-8437-5862027bcf1a",
"HouseNo": "1",
"Country": "d46c54bd-1704-4a55-bb76-fc03073669a0",
"CustomerName": "=CUstomer Sync=",
"PaymentIntervalInMonths": "1",
"BillInAdvance": "true",
"StartDateTmp": "2024-07-02",
"IsSalesOrContract": true,
"ContactEmail": "customer.sync@gmail.com",
"Incasso": "false",
"StateCountry": "b4c87080-7c8c-45e0-8867-a714ffc79b7d",
"Zipcode": "1",
"EndDateTmp": "2050-01-01",
"Street": "1",
"Customer": "9e145169-059d-422d-80eb-07356e9611a8",
"City": "1",
"StartDate": "2024-07-02T06:07:43.603Z",
"HouseNoAdd": null,
"BillingEntity": "f5124299-aaee-4c8f-b80a-9b28647c5353",
"SendInvoiceByEmail": false,
"EndDate": "2050-01-01",
"ContractParts": [],
"BuildingName": null
}
```
#### Responses
##### `200`
**Media type**: `application/json`
- `contractId` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Example**:
```json
{
"contractId": "00000000-0000-0000-0000-000000000000"
}
```
### Fetches Contracts by customer ID (GET /Contracts)
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `id` | (Required) The customer ID.
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$` |
#### Responses
##### `200`
**Media type**: `application/json`
- `contracts` — **Type**: Array of Object
**Array type description:**
**Type**: Object
**Example**:
```json
{
"contracts": [
{
"Id": "00000000-0000-0000-0000-000000000000",
"Name": "",
"HouseNo": "",
"CustomFields": [
{
"Name": "",
"SortNumber": 0,
"CustomFieldValueId": "00000000-0000-0000-0000-000000000000",
"EntityId": "00000000-0000-0000-0000-000000000000",
"Required": false,
"Value": "",
"CustomFieldId": "00000000-0000-0000-0000-000000000000",
"Active": false,
"Type": 1
}
],
"BlockHours": false,
"PaymentIntervalInMonths": 0,
"BillInAdvance": false,
"ProRated": false,
"Contact": "",
"Retainer": false,
"KeepRemainingHours": false,
"ContactEmail": "",
"Incasso": false,
"StateCountry": null,
"Zipcode": "",
"BlockHoursNumber": null,
"Street": "",
"Customer": "00000000-0000-0000-0000-000000000000",
"City": "",
"StartDate": "0001-01-01T00:00:00Z",
"HouseNoAdd": "",
"BillingEntity": "00000000-0000-0000-0000-000000000000",
"RenewalThreshold": null,
"SendInvoiceByEmail": false,
"EndDate": "0001-01-01T00:00:00Z",
"ContractParts": [],
"BuildingName": "",
"ReferenceNumber": ""
}
]
}
```
### Create or update a Contract Part (PUT /ContractPart)
Creates or updates a contract part.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Request body
**Media type**: `application/json`
- `ActualQuantity` — Defines an actual product quantity in use.
**Type**: Number
**Default**: 0
- `AutomaticUpdate` — Defines whether actual quantity will be automatically synchronised from the connected usage integration.
**Type**: Boolean
**Default**: false
- `Description` — Defines a contract part description that will be used for the invoice line.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `Discount` — Defines a discount percent for billing.
**Type**: Number
**Default**: 0
- `DiscountReason` — Defines a discount reason.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `EndDate` — Defines a contract part's start date.
**Type**: DateTime
**Default**: 0001-01-01T00:00:00Z
- `MinBillableQuantity` — Defines a minimum product quantity that will be used for billing.
**Type**: Number
**Default**: 0
- `Price` — Defines a product price for a single item for billing.
**Type**: Number
**Default**: 0
- `Product` — Defines a product used for billing.
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Default**: 00000000-0000-0000-0000-000000000000
- `ServiceLevelAgreement` — Defines a SLA that will be used by default in service desk tickets related to the contract part.
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Default**: 00000000-0000-0000-0000-000000000000
- `ShowMachinesOnInvoice` — In case an actual quantity is synchronised from the number of active devices, defines whether device names will be added to the invoice line.
**Type**: Boolean
**Default**: false
- `ShowUsersOnInvoice` — In case an actual quantity is synchronised from the number of active users, defines whether user names will be added to the invoice line.
**Type**: Boolean
**Default**: false
- `StartDate` — Defines a contract part's end date. Need to describe how to proceed with "Forever" end date. We have this check-box in UI.
**Type**: DateTime
**Default**: 0001-01-01T00:00:00Z
- `TrialPeriod` — Defines whether the contract part will have a trial period. Need to describe how to use it and not use it.
**Type**: Integer
**Default**: 0
**Example**:
```json
{
"ActualQuantity": 0,
"AutomaticUpdate": false,
"Description": "",
"Discount": 0,
"DiscountReason": "",
"EndDate": "0001-01-01T00:00:00Z",
"MinBillableQuantity": 0,
"Price": 0,
"Product": "00000000-0000-0000-0000-000000000000",
"ServiceLevelAgreement": "00000000-0000-0000-0000-000000000000",
"ShowMachinesOnInvoice": false,
"ShowUsersOnInvoice": false,
"StartDate": "0001-01-01T00:00:00Z",
"TrialPeriod": 0
}
```
#### Responses
##### `200`
**Media type**: `application/json`
- `default` — **Type**: any
### Fetch Contract Part (GET /ContractPart)
Fetches a contract part by Contract ID.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `contract` | (Required) Contract ID
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$` |
#### Responses
##### `200`
**Media type**: `application/json`
- `ContractParts` — **Type**: Array of Object
**Array type description:**
**Type**: Object
**Example**:
```json
{
"ContractParts": [
{
"DiscountReason": "",
"ActualQuantity": 0,
"Id": null,
"Quantity": 0,
"ServiceLevelAgreement": "00000000-0000-0000-0000-000000000000",
"ServiceObjectTypes": [],
"Discount": 0,
"Contract": "00000000-0000-0000-0000-000000000000",
"AutomaticUpdate": false,
"ShowUsersOnInvoice": false,
"APIConnection": null,
"Description": "",
"IsReadOnly": false,
"Price": 0,
"MachinesCount": null,
"MinBillableQuantity": 0,
"DeviceServiceTypes": [],
"TrialPeriod": 0,
"SubscriptionType": "00000000-0000-0000-0000-000000000000",
"VARGroup": "00000000-0000-0000-0000-000000000000",
"StartDate": "0001-01-01T00:00:00Z",
"ContractPartType": "00000000-0000-0000-0000-000000000000",
"Product": "00000000-0000-0000-0000-000000000000",
"ServiceObjects": [],
"ProductName": "",
"ServiceObjectGroup": null,
"EndDate": "0001-01-01T00:00:00Z",
"UserType": 0,
"VARConnection": "00000000-0000-0000-0000-000000000000"
}
]
}
```
### Delete Contract Part (DELETE /ContractPart)
Deletes a Contract Part by ID
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `id` | (Required) Contract Part ID
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$` |
#### Responses
##### `200`
**Media type**: `application/json`
- `default` — **Type**: any
### Create ticket (PUT /Call)
Creates a ticket.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Request body
**Media type**: `application/json`
- `APIConnection` — **Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `BillTheCustomer` — Defines whether ticket time should be marked as billable (1) or not billable (0).
**Type**: Boolean
**Default**: false
- `BusinessUnit` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Default**: 00000000-0000-0000-0000-000000000000
- `Category` — Defines a category ID for a ticket.
**Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `Client` — Defines a customer ID for a ticket.
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Default**: 00000000-0000-0000-0000-000000000000
- `ContractPart` — **Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `ElapsedSeconds` — **Type**: Integer
**Default**: 0
- `ExternalReferenceNumber` — **Type**: String
- `ExternalStatus` — **Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `ExternalTicketType` — **Type**: Union
**May be any of**:
1. **Type**: Integer
2. **Type**: null
- `ExternalType` — **Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `ExternalUpdateId` — **Type**: Union
**May be any of**:
1. **Type**: Integer
2. **Type**: null
- `Files` — Defines attachments for a ticket.
**Type**: Array of Object
**Array type description:**
**Type**: Object
- `Followers` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `InternalActions` — Optional internal information for a ticket: actions.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `InternalNotes` — Optional internal information for a ticket: notes.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `IsIctService` — Defines a type of work for a ticket: ICT service (1) or managed service (0).
**Type**: Boolean
**Default**: false
- `Manager` — Defines a user's manager for a ticket.
**Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `MessageToCustomer` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `NextContactDate` — Defines a next contact date information for a ticket.
**Type**: Union
**May be any of**:
1. **Type**: Date
2. **Type**: null
- `PhoneNumber` — Defines contacts information for a customer's user: phone number.
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `Planned` — **Type**: Union
**Default**: false
**May be any of**:
1. **Type**: Boolean
2. **Type**: null
- `PreviousEmailId` — **Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `PreviousSupportUser` — **Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `Priority` — Defines a priority ID for a ticket.
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Default**: 00000000-0000-0000-0000-000000000000
- `ReportedByUser` — Defines a customer's user for a ticket.
**Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `SenderEmailAddress` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `ServiceLevelAgreement` — Defines a SLA ID for a ticket.
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Default**: 00000000-0000-0000-0000-000000000000
- `ServiceObject` — **Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `SupportUser` — Defines a support agent ID for a ticket.
**Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `TicketProducts` — **Type**: Array of Object
**Array type description:**
**Type**: Object
- `Title` — Defines a ticket title.
**Type**: String
- `UpdateEmailRecipients` — * None = 0
* Client = 1
* Manager = 4
* Supplier = 8
**Type**: Integer
**Allowed values**:
- `0`
- `1`
- `4`
- `8`
**Default**: 0
- `UpdateType` — * Customer = 0
* SupportUser = 1
**Type**: Integer
**Allowed values**:
- `0`
- `1`
**Default**: 0
- `UpdateUser` — **Type**: Union
**May be any of**:
1. **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
2. **Type**: null
- `WebUrl` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
**Example**:
```json
{
"FilesForEmailAttachmentOnCreateTicket": [],
"autoPauseCheck": null,
"UpdateUser": "df068165-248c-43c5-bf5d-db9cd1f3188e",
"ServiceLevelAgreement": "63b75905-10d4-44e9-ba1e-7aa2eff4100b",
"PlannedTicket": {
"StartHourstamp": 944,
"StartHour": "2024-08-09T15:44:20.936Z",
"PlannedDate": "",
"Hours": 1,
"Minutes": null
},
"Planned": null,
"Title": "Test",
"Category": "7f8320eb-d653-40ae-9d57-1257bead1a29",
"ContractPart": null,
"CustomFields": [],
"CustomerName": "cstmr_001",
"BillingActivityType": "493a36c9-4cd2-4b89-a693-99ac067d6776",
"BusinessUnitName": "Support group",
"CurrentDate": "2024-08-09T12:46:18.813Z",
"InternalNotes": null,
"PhoneNumber": "12311111",
"InternalActions": null,
"ManagerName": "cstmr_001 Manager",
"TicketProducts": [],
"elapsedHours": "00",
"isStreaming": true,
"NextContactDate": "2024-08-09",
"IsIctService": false,
"BusinessUnit": "25080d45-fc3f-4928-b861-681ba7d5b2e1",
"BillTheCustomer": true,
"ClientName": "cstmr_001 admin",
"CategoryName": "Default Sub-category",
"FilesForEmailAttachment": [],
"elapsedSeconds": 116,
"Customer": "2962473b-50df-4e53-a8d3-0068bbdb54d3",
"UpdateEmailRecipients": 1,
"Priority": "683a47ec-e57c-43a5-ba10-2ccdc03fd331",
"Message": "",
"elapsedMinutes": "01",
"Manager": "be2236fa-df17-4c61-8adb-f5667a343362",
"UTCNextContactDate": "2024-08-09T15:44:20.936Z",
"SupportUser": "df068165-248c-43c5-bf5d-db9cd1f3188e",
"Client": "eb090e85-8357-4fa3-a9bd-afaad51d030f",
"UpdateUserName": "Partner Administrator",
"ReportedByUser": "df068165-248c-43c5-bf5d-db9cd1f3188e",
"Status": "4feaaa86-8757-44d6-a8d6-99fdf9f8ce4d"
}
```
#### Responses
##### `200`
**Media type**: `application/json`
- `id` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Example**:
```json
{
"id": "8f3325a1-6639-4376-8ecf-e9fd936c8251"
}
```
### Fetch ticket (GET /Call)
Fetches a ticket by ID.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `id` | (Required) The customer ID.
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$` |
#### Responses
##### `200`
**Media type**: `application/json`
- `Call` — **Type**: Array of Object
**Array type description:**
**Type**: Object
**Example**:
```json
{
"Call": [
{
"Id": "00000000-0000-0000-0000-000000000000",
"TotalTimeSpent": null,
"Reason": "",
"UpdateUser": "00000000-0000-0000-0000-000000000000",
"ExternalDeviceId": "",
"ClientDocumentation": "",
"ServiceLevelAgreement": "00000000-0000-0000-0000-000000000000",
"PlannedTicket": {},
"Planned": false,
"Title": "",
"IsContinuumTicket": false,
"Category": null,
"IsQuoteTicket": false,
"RelatedCalls": [],
"ContractPart": null,
"ServiceObjectName": "",
"AmountOfPagesFound": 0,
"ExternalReferenceNumber": "",
"SupportUserDeleted": null,
"CustomerName": "",
"BusinessUnitName": "",
"APIConnection": null,
"ClientDeleted": null,
"ExternalGroupId": "",
"PhoneNumber": "",
"StatusClassName": "",
"ExternalStatus": null,
"ManagerName": "",
"Tenant": "00000000-0000-0000-0000-000000000000",
"ProjectTicketSolved": false,
"Grade": null,
"ExternalTicketType": null,
"EmailCustomer": false,
"TicketProducts": [],
"IsIctService": false,
"ExternalStatusName": "",
"BusinessUnit": "00000000-0000-0000-0000-000000000000",
"LastThreeCalls": [],
"BillTheCustomer": false,
"ClientName": "",
"CategoryName": "",
"IsQuotePurchaseOrderTicket": false,
"ServiceLevelAgreementName": "",
"Customer": "00000000-0000-0000-0000-000000000000",
"Updates": [],
"CustomerPhoneNumber": "",
"Priority": "00000000-0000-0000-0000-000000000000",
"ServiceObject": null,
"StatusTranslatedName": "",
"StatusName": "",
"AmountOfRecordsFound": 0,
"HelpdeskPlans": null,
"Manager": "00000000-0000-0000-0000-000000000000",
"CallContact": {},
"AutoPause": null,
"SupportUser": "00000000-0000-0000-0000-000000000000",
"Client": "00000000-0000-0000-0000-000000000000",
"ContinuumTicket": false,
"ManagerDeleted": null,
"Followers": "",
"SupportUserName": "",
"SlaBreachDate": "0001-01-01T00:00:00Z",
"ExternalType": null,
"PriorityName": "",
"RatedBy": "",
"Status": "00000000-0000-0000-0000-000000000000",
"ReferenceNumber": "",
"DateLastUpdate": "0001-01-01T00:00:00Z"
}
]
}
```
### Update Ticket (PUT /SchedulerTickets)
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Request body
**Media type**: `application/json`
- `ExternalUpdateId` — **Type**: Union
**May be any of**:
1. **Type**: Integer
2. **Type**: null
- `Note` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `TicketId` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Default**: 00000000-0000-0000-0000-000000000000
**Example**:
```json
{
"ExternalUpdateId": 0,
"Note": "",
"TicketId": "00000000-0000-0000-0000-000000000000"
}
```
#### Responses
##### `200`
**Media type**: `application/json`
- `default` — **Type**: any
### Fetch Ticket updates (GET /SchedulerTickets)
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `endDate` | (Optional) **Type**: Union
**May be any of**:
1. RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
2. **Type**: null |
| `id` | (Required) User id
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$` |
| `startDate` | (Optional) **Type**: Union
**May be any of**:
1. RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
2. **Type**: null |
#### Responses
##### `200`
**Media type**: `application/json`
- `Activities` — **Type**: Object
- `BussinesUnits` — **Type**: Array
- `CalendarEvents` — **Type**: Array
- `CalendarWorkingHours` — **Type**: Array
- `CalendarWorkingHoursFiltered` — **Type**: Array
- `Customers` — **Type**: Object
- `DayOffs` — **Type**: Array
- `PlannedTickets` — **Type**: Array
- `Tickets` — **Type**: Array
- `calls` — **Type**: Array
**Example**:
```json
{
"calls": [],
"BussinesUnits": [],
"PlannedTickets": [],
"CalendarWorkingHours": [],
"Activities": {
"Activities": [],
"Paging": {
"AmountRecordsFound": 0,
"AmountOfPages": 0,
"AmountTotalItems": 0
}
},
"Customers": {
"customers": []
},
"Tickets": [],
"DayOffs": [],
"CalendarWorkingHoursFiltered": [],
"CalendarEvents": []
}
```
### Fetch helpdesk attachment (GET /UploadedFiles)
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `customer` | (Optional) **Type**: String |
| `referenceNumber` | (Optional) **Type**: String |
| `ticketId` | (Required) **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$` |
#### Responses
##### `200`
**Media type**: `application/json`
- `FileName` — **Type**: String
- `FileSizeInBytes` — **Type**: Integer
- `FileSrc` — **Type**: String
- `FileType` — **Type**: String
**Example**:
```json
{
"FileName": "",
"FileSizeInBytes": 0,
"FileSrc": "",
"FileType": ""
}
```
### Fetch email attachment (GET /EmailUpdates)
Covers attachments management for a ticket: upload, download, delete.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `id` | (Required) **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$` |
#### Responses
##### `200`
**Media type**: `application/json`
- `list` — **Type**: Object
**Example**:
```json
{
"list": {
"Base64ImageString": null,
"ContentId": "",
"ContentType": "",
"FileName": "",
"Id": "00000000-0000-0000-0000-000000000000",
"Stream": null
}
}
```
### Update invoice (POST /InvoiceOverview)
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Request body
**Media type**: `application/json`
- `invoice` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `paymentConfirmed` — **Type**: Boolean
- `intPaymentType` — **Type**: Integer
**Example**:
```json
{
"invoice": "00000000-0000-0000-0000-000000000000",
"paymentConfirmed": true,
"intPaymentType": 0
}
```
#### Responses
##### `200`
**Media type**: `application/json`
- `default` — **Type**: any
### Fetch invoice (GET /InvoiceOverview)
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `Customer` | (Optional) Customer (GUID)
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null |
| `DeliveryMethod` | (Optional) Invoice's delivery method
**Type**: Union
**May be any of**:
1. **Type**: Boolean
2. **Type**: null |
| `DeliveryMethodByEmail` | (Optional) Invoice's delivery method "By email"
**Type**: Boolean
**Default**: false |
| `DeliveryMethodByPost` | (Optional) Invoice's delivery method "By mail"
**Type**: Boolean
**Default**: false |
| `InvoiceNumber` | (Optional) Invoice number
**Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null |
| `PaymentSent` | (Optional) Invoice's payment link
**Type**: Union
**May be any of**:
1. **Type**: Boolean
2. **Type**: null |
| `PaymentSentNotSent` | (Optional) Invoice's payment link not sent
**Type**: Boolean
**Default**: false |
| `PaymentSentSent` | (Optional) Invoice's payment link sent
**Type**: Boolean
**Default**: false |
| `PaymentStatus` | (Optional) Invoice's payment status
**Type**: Union
**May be any of**:
1. **Type**: Boolean
2. **Type**: null |
| `PaymentStatusConfirmed` | (Optional) Invoice's payment status confirmed
**Type**: Boolean
**Default**: false |
| `PaymentStatusNotConfirmed` | (Optional) Invoice's payment status not confirmed
**Type**: Boolean
**Default**: false |
| `ShowExported` | (Optional) Allows filtering by exported Invoices
**Type**: Union
**May be any of**:
1. **Type**: Boolean
2. **Type**: null |
| `SortColumn` | (Optional) Invoice sorting options
**Type**: String
**Allowed values**:
- `CustomerName`
- `BatchNumber`
- `CreationDate`
- `ScheduleAt`
- `DeliveryMethod`
- `EmailSent`
- `PaymentConfirmed`
- `PaidDate`
- `InvoicedBy`
- `ExportDate`
- `Exported`
- `InvoiceNumber`
- `BilledFor`
- `PaymentMethod`
- `InvoiceTotal`
**Default**: CustomerName |
| `SortDirection` | (Optional) Invoice sorting direction ascending or descending
**Type**: String
**Allowed values**:
- `Asc`
- `Desc`
**Default**: Asc |
| `Page` | (Required) Invoice pagination options: page number.
**Type**: Integer
**Default**: 0 |
| `PageSize` | (Required) Invoice pagination options: page size.
**Type**: Integer
**Default**: 0 |
#### Responses
##### `200`
**Media type**: `application/json`
- `InvoicesPagedSearchResult` — **Type**: Object
**Example**:
```json
{
"InvoicesPagedSearchResult": {
"Invoices": [
{
"BatchNumber": "",
"BillingEntityName": "",
"CreationDate": "0001-01-01T00:00:00+00:00",
"Customer": "00000000-0000-0000-0000-000000000000",
"CustomerName": "",
"Exported": false,
"ExportedDate": "0001-01-01T00:00:00+00:00",
"Id": "00000000-0000-0000-0000-000000000000",
"Incasso": false,
"InvoiceNumber": "",
"InvoiceQueueErrorCount": 0,
"InvoiceQueueErrorMessage": "",
"InvoiceQueueExternalInvoiceStatus": 0,
"InvoiceQueueId": "00000000-0000-0000-0000-000000000000",
"InvoiceQueueLastUpdateTime": "0001-01-01T00:00:00",
"InvoiceQueueStatus": 0,
"InvoiceXml": "",
"InvoicedBy": "",
"InvoicerDeleted": true,
"IsConsolidateBillingStructure": false,
"PaymentDate": "0001-01-01T00:00:00",
"PaymentSent": false,
"PaymentStatus": false,
"PaymentType": 0,
"ScheduledAt": "0001-01-01T00:00:00",
"SendByEmail": false,
"Tenant": "00000000-0000-0000-0000-000000000000",
"Total": 0
}
],
"Paging": {
"AmountTotalItems": 0,
"AmountRecordsFound": 0,
"AmountOfPages": 0
}
}
}
```
### Download invoice (GET /DownloadInvoice)
Downloads an Invoice based on its ID.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `id` | (Required) ID of the invoice.
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$` |
#### Responses
##### `200`
**Media type**: `application/pdf`
- `schema` — The invoice PDF.
**Type**: any
### Export invoices (POST /ExportInvoice)
Exports Invoices based on IDs and format type and sets their `Exported` flag and sets or updates `ExportedDate`.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `ids` | (Required) ID of the invoice.
**Type**: Array of String
**Array type description:**
**Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$` |
| `exportFormat` | (Required) Export format. 0 for XML; 1 for CSV.
**Type**: Integer
**Allowed values**:
- `0`
- `1` |
#### Responses
##### `200`
**Media type**: `text/csv`
- `schema` — The invoice in CSV format.
**Type**: any
**Media type**: `application/xml`
- `schema` — The invoice in XML format.
**Type**: any
### Fetch dashboard data (GET /DashboardData)
Fetches data for Dashboard which includes ticket types.
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `CurrentUser` | (Required) **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$` |
| `EndDate` | (Optional) **Type**: Union
**May be any of**:
1. RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
2. **Type**: null |
| `StartDate` | (Optional) **Type**: Union
**May be any of**:
1. RFC3339-like date and time without timezone.
**Type**: String
**Pattern**: `^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?$`
2. **Type**: null |
| `isTier4` | (Optional) **Type**: Union
**May be any of**:
1. **Type**: Boolean
2. **Type**: null |
#### Responses
##### `200`
**Media type**: `application/json`
- `ARPU` — **Type**: Number
- `AllCurrentSalesItemsAmount` — **Type**: Integer
- `CurrentContractsRevenue` — **Type**: Number
- `EndpointsPartOfAContract` — **Type**: Integer
- `MRRGrowth` — **Type**: Object
- `NPSRatings` — **Type**: Object
- `NumberOfEndUsers` — **Type**: Integer
- `OccupancyRate` — **Type**: Number
- `OpenTicketsNumberDay` — **Type**: Integer
- `Revenues` — **Type**: Array
- `SLATicketsNumberDay` — **Type**: Integer
- `SalesItemsGrowth` — **Type**: Object
- `ShowARPU` — **Type**: Boolean
- `ShowAllRevenue` — **Type**: Boolean
- `ShowCurrentContractsRevenue` — **Type**: Boolean
- `ShowNewSalesItems` — **Type**: Boolean
- `ShowNumberEndpoints` — **Type**: Boolean
- `ShowOccupancyRate` — **Type**: Boolean
- `TicketStatistics` — **Type**: Object
- `TicketTypes` — **Type**: Array
- `TicketTypesSplit` — **Type**: Array
- `TicketsDueTodayNumber` — **Type**: Integer
- `TotalEndpointsUnderManagement` — **Type**: Integer
- `UnassignedTicketsNumber` — **Type**: Integer
- `UpcomingOnSiteVisit` — **Type**: Boolean
- `UpcomingOnSiteVisitNumber` — **Type**: Integer
- `accountIsExpired` — **Type**: Object
**Example**:
```json
{
"ShowARPU": true,
"NumberOfEndUsers": 0,
"CurrentContractsRevenue": 0,
"TotalEndpointsUnderManagement": 0,
"TicketTypes": [],
"TicketsDueTodayNumber": 0,
"ShowNewSalesItems": true,
"UpcomingOnSiteVisit": {},
"Revenues": [],
"MRRGrowth": {
"LastNet": 0,
"NetGrowth": 0
},
"NPSRatings": {
"IsGroup": false,
"NPSGroupYear": 0,
"NPSOwnYear": 0,
"NPSGroupMonth": 0,
"NPSOwnMonth": 0
},
"ARPU": 0,
"TicketStatistics": {
"TicketStatistics": {},
"TicketStatisticsAll": {},
"TicketStatisticsLast": {}
},
"ShowNumberEndUsers": true,
"EndpointsPartOfAContract": 0,
"accountIsExpired": {
"TrialAccountExpired": false
},
"ShowOccupancyRate": true,
"ShowCurrentContractsRevenue": true,
"ShowAllRevenue": true,
"ShowNumberEndpoints": true,
"UpcomingOnSiteVisitNumber": 0,
"AllCurrentSalesItemsAmount": 0,
"UnassignedTicketsNumber": 0,
"SLATicketsNumberDay": 0,
"OpenTicketsNumberDay": 0,
"SalesItemsGrowth": {
"LastBilledSalesItems": 0,
"SalesItemsGrowth": 0
},
"TicketTypesSplit": [],
"OccupancyRate": 0
}
```
### Fetch Service Level Agreements (SLA) (GET /SLA)
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `Active` | (Optional) **Type**: Union
**May be any of**:
1. **Type**: Boolean
2. **Type**: null |
| `Name` | (Optional) **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null |
| `Page` | (Required) **Type**: Integer |
| `ShortName` | (Optional) **Type**: String |
| `SortColumn` | (Optional) **Type**: String
**Allowed values**:
- `Name` |
| `SortDirection` | (Optional) **Type**: String
**Allowed values**:
- `Asc`
- `Desc` |
| `PageSize` | (Required) **Type**: Integer
**Default**: 0 |
#### Responses
##### `200`
**Media type**: `application/json`
- `SLAPagedSearchResult` — **Type**: Object
**Example**:
```json
{
"SLAPagedSearchResult": {
"SLAs": [
{
"Id": "00000000-0000-0000-0000-000000000000",
"Name": "",
"ShortName": "",
"IsUsed": false,
"ResponseTime": 0,
"FeedbackInterval": 0,
"Active": false
}
],
"Paging": {
"AmountRecordsFound": 0,
"AmountOfPages": 0
}
}
}
```
### Create tax (PUT /Taxes)
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Request body
**Media type**: `application/json`
- `Active` — **Type**: Boolean
**Default**: false
- `AllowInactive` — **Type**: Boolean
**Default**: false
- `Code` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `Id` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Default**: 00000000-0000-0000-0000-000000000000
- `IsDefault` — **Type**: Boolean
**Default**: false
- `Name` — **Type**: Union
**May be any of**:
1. **Type**: String
2. **Type**: null
- `Tenant` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
**Default**: 00000000-0000-0000-0000-000000000000
- `Value` — **Type**: Number
**Default**: 0
**Example**:
```json
{
"Active": false,
"AllowInactive": false,
"Code": "",
"Id": "00000000-0000-0000-0000-000000000000",
"IsDefault": false,
"Name": "",
"Tenant": "00000000-0000-0000-0000-000000000000",
"Value": 0
}
```
#### Responses
##### `200`
**Media type**: `application/json`
- `Active` — **Type**: Boolean
- `AllowInactive` — **Type**: Boolean
- `Code` — **Type**: String
- `Id` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `IsDefault` — **Type**: Boolean
- `Name` — **Type**: String
- `Tenant` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `Value` — **Type**: Number
**Example**:
```json
{
"Id": "00000000-0000-0000-0000-000000000000",
"Name": "",
"Code": "",
"Tenant": "00000000-0000-0000-0000-000000000000",
"Value": 0,
"AllowInactive": false,
"IsDefault": false,
"Active": false
}
```
### Create taxes (POST /Taxes)
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Request body
**Media type**: `application/json`
- `Tax` — **Type**: Array of Object
**Array type description:**
**Type**: Object
**Example**:
```json
{
"Tax": [
{
"Active": false,
"AllowInactive": false,
"Code": "",
"Id": "00000000-0000-0000-0000-000000000000",
"IsDefault": false,
"Name": "",
"Tenant": "00000000-0000-0000-0000-000000000000",
"Value": 0
}
]
}
```
#### Responses
##### `200`
**Media type**: `application/json`
- `default` — **Type**: any
### Fetch tax (GET /Taxes)
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `id` | (Required) **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$` |
#### Responses
##### `200`
**Media type**: `application/json`
- `Active` — **Type**: Boolean
- `AllowInactive` — **Type**: Boolean
- `Code` — **Type**: String
- `Id` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `IsDefault` — **Type**: Boolean
- `Name` — **Type**: String
- `Tenant` — **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
- `Value` — **Type**: Number
**Example**:
```json
{
"Active": true,
"AllowInactive": true,
"Code": "",
"Id": "00000000-0000-0000-0000-000000000000",
"IsDefault": true,
"Name": "",
"Tenant": "00000000-0000-0000-0000-000000000000",
"Value": 0
}
```
### Delete tax (DELETE /Taxes)
#### Security
The endpoint supports the following authorization methods: `OAuth 2.0`
#### Request parameters
##### Query parameters
| Name | Description |
|------|-------------|
| `id` | (Required) **Type**: String
**Pattern**: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$` |
#### Responses
##### `200`
**Media type**: `application/json`
- `default` — **Type**: any