# DepositAccountInterestAvailabilityApi

All URIs are relative to *http://localhost:8889/api*

|Method | HTTP request | Description|
|------------- | ------------- | -------------|
|[**createInterestAvailability**](#createinterestavailability) | **POST** /deposits/{depositAccountId}/interest-availabilities | Create Interest Availability|
|[**deleteInterestAvailability**](#deleteinterestavailability) | **DELETE** /deposits/{depositAccountId}/interest-availabilities/{interestAvailabilityKey} | Delete Interest Availability|
|[**getInterestAvailabilitiesList**](#getinterestavailabilitieslist) | **GET** /deposits/{depositAccountId}/interest-availabilities | Get Interest Availabilities|
|[**getInterestAvailabilityById**](#getinterestavailabilitybyid) | **GET** /deposits/{depositAccountId}/interest-availabilities/{interestAvailabilityKey} | Get Interest Availability|
|[**makeBulkInterestAccountSettingsAvailabilities**](#makebulkinterestaccountsettingsavailabilities) | **POST** /deposits/interest-availabilities:bulk | Create Interest Availabilities for a group of accounts|
|[**updateInterestAvailability**](#updateinterestavailability) | **PUT** /deposits/{depositAccountId}/interest-availabilities/{interestAvailabilityKey} | Update Interest Availability|

# **createInterestAvailability**
> InterestAccountSettingsAvailabilityResponse createInterestAvailability(interestAccountSettingsAvailability)


### Example

```typescript
import {
    DepositAccountInterestAvailabilityApi,
    Configuration,
    InterestAccountSettingsAvailability
} from './api';

const configuration = new Configuration();
const apiInstance = new DepositAccountInterestAvailabilityApi(configuration);

let depositAccountId: string; //The ID or encoded key of the deposit account. (default to undefined)
let interestAccountSettingsAvailability: InterestAccountSettingsAvailability; //The Interest Availability to be created.
let idempotencyKey: string; //Key that can be used to support idempotency on this POST. Must be a valid UUID(version 4 is recommended) string and can only be used with the exact same request. Can be used in retry mechanisms to prevent double posting. (optional) (default to undefined)

const { status, data } = await apiInstance.createInterestAvailability(
    depositAccountId,
    interestAccountSettingsAvailability,
    idempotencyKey
);
```

### Parameters

|Name | Type | Description  | Notes|
|------------- | ------------- | ------------- | -------------|
| **interestAccountSettingsAvailability** | **InterestAccountSettingsAvailability**| The Interest Availability to be created. | |
| **depositAccountId** | [**string**] | The ID or encoded key of the deposit account. | defaults to undefined|
| **idempotencyKey** | [**string**] | Key that can be used to support idempotency on this POST. Must be a valid UUID(version 4 is recommended) string and can only be used with the exact same request. Can be used in retry mechanisms to prevent double posting. | (optional) defaults to undefined|


### Return type

**InterestAccountSettingsAvailabilityResponse**

### Authorization

[basic](../README.md#basic)

### HTTP request headers

 - **Content-Type**: application/json
 - **Accept**: application/vnd.mambu.v2+json


### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
|**102** | Your idempotent request was already submitted and is currently being processed, try again later. |  -  |
|**201** | Interest Availability has been created. |  -  |
|**400** | A validation error occurred |  -  |
|**401** | Unauthorized |  -  |
|**403** | Forbidden |  -  |
|**409** | Operation cannot be performed due to another pending operation that locked shared resources. |  -  |

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)

# **deleteInterestAvailability**
> deleteInterestAvailability()


### Example

```typescript
import {
    DepositAccountInterestAvailabilityApi,
    Configuration
} from './api';

const configuration = new Configuration();
const apiInstance = new DepositAccountInterestAvailabilityApi(configuration);

let depositAccountId: string; //The ID or encoded key of the deposit account. (default to undefined)
let interestAvailabilityKey: string; //The encoded key of the Interest Availability. (default to undefined)

const { status, data } = await apiInstance.deleteInterestAvailability(
    depositAccountId,
    interestAvailabilityKey
);
```

### Parameters

|Name | Type | Description  | Notes|
|------------- | ------------- | ------------- | -------------|
| **depositAccountId** | [**string**] | The ID or encoded key of the deposit account. | defaults to undefined|
| **interestAvailabilityKey** | [**string**] | The encoded key of the Interest Availability. | defaults to undefined|


### Return type

void (empty response body)

### Authorization

[basic](../README.md#basic)

### HTTP request headers

 - **Content-Type**: Not defined
 - **Accept**: application/vnd.mambu.v2+json


### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
|**204** | The Interest Availability has been deleted. |  -  |
|**400** | A validation error occurred |  -  |
|**401** | Unauthorized |  -  |
|**403** | Forbidden |  -  |
|**404** | Deposit Account or Interest Availability does not exist. |  -  |
|**409** | Operation cannot be performed due to another pending operation that locked shared resources. |  -  |

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)

# **getInterestAvailabilitiesList**
> Array<InterestAccountSettingsAvailabilityResponse> getInterestAvailabilitiesList()


### Example

```typescript
import {
    DepositAccountInterestAvailabilityApi,
    Configuration
} from './api';

const configuration = new Configuration();
const apiInstance = new DepositAccountInterestAvailabilityApi(configuration);

let depositAccountId: string; //The ID or encoded key of the deposit account. (default to undefined)
let offset: number; //Pagination, index to start searching at when retrieving elements, used in combination with limit to paginate results (optional) (default to undefined)
let limit: number; //Pagination, the number of elements to retrieve, used in combination with offset to paginate results (optional) (default to undefined)
let paginationDetails: 'ON' | 'OFF'; //Flag specifying whether the pagination  details should be provided in response headers. Please note that by default it is disabled (OFF), in order to improve the performance of the APIs (optional) (default to 'OFF')
let type: 'INTEREST' | 'OVERDRAFT' | 'TECHNICAL_OVERDRAFT'; //The type of Interest Availabilities. (optional) (default to undefined)
let from: string; //The start date to get Interest Availabilities. (optional) (default to undefined)
let to: string; //The end date to to get Interest Availabilities. (optional) (default to undefined)

const { status, data } = await apiInstance.getInterestAvailabilitiesList(
    depositAccountId,
    offset,
    limit,
    paginationDetails,
    type,
    from,
    to
);
```

### Parameters

|Name | Type | Description  | Notes|
|------------- | ------------- | ------------- | -------------|
| **depositAccountId** | [**string**] | The ID or encoded key of the deposit account. | defaults to undefined|
| **offset** | [**number**] | Pagination, index to start searching at when retrieving elements, used in combination with limit to paginate results | (optional) defaults to undefined|
| **limit** | [**number**] | Pagination, the number of elements to retrieve, used in combination with offset to paginate results | (optional) defaults to undefined|
| **paginationDetails** | [**&#39;ON&#39; | &#39;OFF&#39;**]**Array<&#39;ON&#39; &#124; &#39;OFF&#39;>** | Flag specifying whether the pagination  details should be provided in response headers. Please note that by default it is disabled (OFF), in order to improve the performance of the APIs | (optional) defaults to 'OFF'|
| **type** | [**&#39;INTEREST&#39; | &#39;OVERDRAFT&#39; | &#39;TECHNICAL_OVERDRAFT&#39;**]**Array<&#39;INTEREST&#39; &#124; &#39;OVERDRAFT&#39; &#124; &#39;TECHNICAL_OVERDRAFT&#39;>** | The type of Interest Availabilities. | (optional) defaults to undefined|
| **from** | [**string**] | The start date to get Interest Availabilities. | (optional) defaults to undefined|
| **to** | [**string**] | The end date to to get Interest Availabilities. | (optional) defaults to undefined|


### Return type

**Array<InterestAccountSettingsAvailabilityResponse>**

### Authorization

[basic](../README.md#basic)

### HTTP request headers

 - **Content-Type**: Not defined
 - **Accept**: application/vnd.mambu.v2+json


### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
|**200** | List of Interest Availabilities has been returned. |  * Items-Limit - Pagination details, the requested page size <br>  * Items-Offset - Pagination details, the index of the first returned item <br>  * Items-Total - Pagination details, the total available items <br>  |
|**400** | A validation error occurred |  -  |
|**401** | Unauthorized |  -  |
|**403** | Forbidden |  -  |
|**404** | Deposit Account or Interest Availability does not exist. |  -  |

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)

# **getInterestAvailabilityById**
> InterestAccountSettingsAvailabilityResponse getInterestAvailabilityById()


### Example

```typescript
import {
    DepositAccountInterestAvailabilityApi,
    Configuration
} from './api';

const configuration = new Configuration();
const apiInstance = new DepositAccountInterestAvailabilityApi(configuration);

let depositAccountId: string; //The ID or encoded key of the deposit account. (default to undefined)
let interestAvailabilityKey: string; //The encoded key of the Interest Availability. (default to undefined)

const { status, data } = await apiInstance.getInterestAvailabilityById(
    depositAccountId,
    interestAvailabilityKey
);
```

### Parameters

|Name | Type | Description  | Notes|
|------------- | ------------- | ------------- | -------------|
| **depositAccountId** | [**string**] | The ID or encoded key of the deposit account. | defaults to undefined|
| **interestAvailabilityKey** | [**string**] | The encoded key of the Interest Availability. | defaults to undefined|


### Return type

**InterestAccountSettingsAvailabilityResponse**

### Authorization

[basic](../README.md#basic)

### HTTP request headers

 - **Content-Type**: Not defined
 - **Accept**: application/vnd.mambu.v2+json


### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
|**200** | Interest Availability has been returned. |  -  |
|**400** | A validation error occurred |  -  |
|**401** | Unauthorized |  -  |
|**403** | Forbidden |  -  |
|**404** | Deposit Account or Interest Availability does not exist. |  -  |

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)

# **makeBulkInterestAccountSettingsAvailabilities**
> ErrorResponse makeBulkInterestAccountSettingsAvailabilities(bulkInterestAccountSettingsAvailabilityInput)


### Example

```typescript
import {
    DepositAccountInterestAvailabilityApi,
    Configuration,
    BulkInterestAccountSettingsAvailabilityInput
} from './api';

const configuration = new Configuration();
const apiInstance = new DepositAccountInterestAvailabilityApi(configuration);

let bulkInterestAccountSettingsAvailabilityInput: BulkInterestAccountSettingsAvailabilityInput; //The information for creating bulk Interest Availabilities.
let idempotencyKey: string; //Key that can be used to support idempotency on this POST. Must be a valid UUID(version 4 is recommended) string and can only be used with the exact same request. Can be used in retry mechanisms to prevent double posting. (optional) (default to undefined)

const { status, data } = await apiInstance.makeBulkInterestAccountSettingsAvailabilities(
    bulkInterestAccountSettingsAvailabilityInput,
    idempotencyKey
);
```

### Parameters

|Name | Type | Description  | Notes|
|------------- | ------------- | ------------- | -------------|
| **bulkInterestAccountSettingsAvailabilityInput** | **BulkInterestAccountSettingsAvailabilityInput**| The information for creating bulk Interest Availabilities. | |
| **idempotencyKey** | [**string**] | Key that can be used to support idempotency on this POST. Must be a valid UUID(version 4 is recommended) string and can only be used with the exact same request. Can be used in retry mechanisms to prevent double posting. | (optional) defaults to undefined|


### Return type

**ErrorResponse**

### Authorization

[basic](../README.md#basic)

### HTTP request headers

 - **Content-Type**: application/json
 - **Accept**: application/vnd.mambu.v2+json


### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
|**102** | Your idempotent request was already submitted and is currently being processed, try again later. |  -  |
|**202** | The bulk Interest Availabilities have been created. |  * Location - Bulk process key <br>  |
|**400** | A validation error occurred |  -  |
|**401** | Unauthorized |  -  |
|**403** | Forbidden |  -  |

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)

# **updateInterestAvailability**
> InterestAccountSettingsAvailabilityResponse updateInterestAvailability(interestAccountSettingsAvailabilityUpdate)


### Example

```typescript
import {
    DepositAccountInterestAvailabilityApi,
    Configuration,
    InterestAccountSettingsAvailabilityUpdate
} from './api';

const configuration = new Configuration();
const apiInstance = new DepositAccountInterestAvailabilityApi(configuration);

let depositAccountId: string; //The ID or encoded key of the deposit account. (default to undefined)
let interestAvailabilityKey: string; //The encoded key of the Interest Availability. (default to undefined)
let interestAccountSettingsAvailabilityUpdate: InterestAccountSettingsAvailabilityUpdate; //The Interest Availability to be created.

const { status, data } = await apiInstance.updateInterestAvailability(
    depositAccountId,
    interestAvailabilityKey,
    interestAccountSettingsAvailabilityUpdate
);
```

### Parameters

|Name | Type | Description  | Notes|
|------------- | ------------- | ------------- | -------------|
| **interestAccountSettingsAvailabilityUpdate** | **InterestAccountSettingsAvailabilityUpdate**| The Interest Availability to be created. | |
| **depositAccountId** | [**string**] | The ID or encoded key of the deposit account. | defaults to undefined|
| **interestAvailabilityKey** | [**string**] | The encoded key of the Interest Availability. | defaults to undefined|


### Return type

**InterestAccountSettingsAvailabilityResponse**

### Authorization

[basic](../README.md#basic)

### HTTP request headers

 - **Content-Type**: application/json
 - **Accept**: application/vnd.mambu.v2+json


### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
|**200** | The Interest Availability has been updated. |  -  |
|**400** | A validation error occurred |  -  |
|**401** | Unauthorized |  -  |
|**403** | Forbidden |  -  |
|**404** | Deposit Account or Interest Availability does not exist. |  -  |
|**409** | Operation cannot be performed due to another pending operation that locked shared resources. |  -  |

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)

